UNPKG

vue-hooks-plus

Version:
42 lines (41 loc) 2.52 kB
import { Ref } from 'vue'; import { UseRequestFetchState, UseRequestOptions, UseRequestPluginReturn, UseRequestService, UseRequestOptionsWithFormatResult, UseRequestOptionsWithInitialData } from './types'; export default class Fetch<TData, TParams extends unknown[] = any> { serviceRef: Ref<UseRequestService<TData, TParams>>; options: Partial<UseRequestOptions<TData, TParams, any> & UseRequestOptionsWithFormatResult<TData, TParams, any, any> & UseRequestOptionsWithInitialData<TData, TParams, any>>; setUpdateData: (currentState: unknown, key?: keyof UseRequestFetchState<TData, TParams>) => void; initState: Partial<UseRequestFetchState<TData, TParams>>; pluginImpls: UseRequestPluginReturn<TData, TParams>[] | undefined; count: number; state: UseRequestFetchState<TData, TParams>; previousValidData: UseRequestFetchState<TData, TParams>['data']; constructor(serviceRef: Ref<UseRequestService<TData, TParams>>, options: Partial<UseRequestOptions<TData, TParams, any> & UseRequestOptionsWithFormatResult<TData, TParams, any, any> & UseRequestOptionsWithInitialData<TData, TParams, any>>, setUpdateData: (currentState: unknown, key?: keyof UseRequestFetchState<TData, TParams>) => void, initState?: Partial<UseRequestFetchState<TData, TParams>>); /** * set state * @param currentState currentState */ setState(currentState?: Partial<UseRequestFetchState<TData, TParams>>): void; /** * should rename * @param data Result value `unknown` * @param key Result key `data`| `params` | `loading`| `error` */ setData(data: unknown, key?: keyof UseRequestFetchState<TData, TParams> | (keyof UseRequestFetchState<TData, TParams>)[]): void; /** * * @param data Result value `unknown` * @param key Result key `data`| `params` | `loading`| `error` */ setFetchState(data: unknown, key?: keyof UseRequestFetchState<TData, TParams> | (keyof UseRequestFetchState<TData, TParams>)[]): void; /** * Traverse the plugin that needs to be run, * which is a callback function for the plugin to obtain fetch instances and execute plugin logic at the corresponding nodes. */ runPluginHandler(event: keyof UseRequestPluginReturn<TData, TParams>, ...rest: unknown[]): any; runAsync(...params: TParams): Promise<TData>; run(...params: TParams): void; cancel(): void; refresh(): void; refreshAsync(): Promise<TData>; mutate(data?: TData | ((oldData?: TData) => TData | undefined)): void; }