UNPKG

tav-ui

Version:
38 lines (37 loc) 1.65 kB
import { type Ref, type WritableComputedRef } from 'vue'; import { type ReturnOf } from '../utils'; import { type UseDisableReturn, type UseLoadingReturn } from './'; export interface UseRequestHandleApiDefaultOptions<T, K> { apiParams: T; api?: (params: T) => Promise<{ data: K; [k: string]: any; }>; /** 返回 true 继续执行;返回 T 代表修改后的 apiparams,用其继续执行;返回其他则退出请求*/ beforeApi?: (params: T) => Promise<T | boolean>; afterApi?: (params: K) => Promise<any>; catchError?: (params: K) => Promise<any>; /** 是否将参数全部转换为 formdata */ transformApiParamsToFormData?: { fileFiledName?: string; filterNames?: string[]; }; /** 成功提示 */ successMessage?: (...args: any[]) => string; /** 失败提示 */ failureMessage?: (...args: any[]) => string; /** 只用 success 判断接口成功,默认使用 success + data */ useSuccessPassRes?: boolean; callback?: () => void; responseDataType?: 'object' | 'array'; } export declare function useRequest(options: { setLoading: UseLoadingReturn['setLoading']; setDisable: UseDisableReturn['setDisable']; loading?: WritableComputedRef<Ref<boolean>>; }): { result: import("vue").ComputedRef<any>; error: import("vue").ComputedRef<string>; handleApi: <O extends Record<string, any>, T extends Record<string, any>, K extends Record<string, any> | Record<string, any>[]>(options: O & UseRequestHandleApiDefaultOptions<T, K>) => Promise<void>; }; export declare type UseRequestReturn = ReturnOf<typeof useRequest>;