@hopeio/utils
Version:
javascript utils
44 lines (43 loc) • 1.89 kB
TypeScript
export type UniRequestOptions = Omit<UniApp.RequestOptions, 'url'> & {
baseUrl?: string;
query?: Record<string, any>;
/** 出错时是否隐藏错误提示 */
hideErrorToast?: boolean;
successMsg?: string;
loadingMsg?: string;
};
export type UniUploadFileOptions = {
file?: File;
files?: UniApp.UploadFileOptionFiles[];
filePath?: string;
name?: string;
formData?: any;
};
type UniRequestInterceptor = (options: UniRequestOptions) => UniRequestOptions;
type UniResponseInterceptor = (response: RequestSuccessCallbackResult) => RequestSuccessCallbackResult | null;
type UniResponseErrorInterceptor = (err: UniApp.GeneralCallbackResult) => any;
export interface RequestSuccessCallbackResult extends UniApp.RequestSuccessCallbackResult {
config?: UniRequestOptions;
}
declare class UniRequest {
constructor(defaultConfig?: UniRequestOptions);
defaults: UniRequestOptions;
private requestInterceptors;
private responseInterceptors;
private responseErrorInterceptors;
interceptors: {
request: {
use: (ri: UniRequestInterceptor) => void;
};
response: {
use: (ri: UniResponseInterceptor, ei: UniResponseErrorInterceptor) => void;
};
};
request<T = any>(method: 'GET' | 'POST' | 'PUT' | 'DELETE', url: string, config?: UniRequestOptions): Promise<T>;
get<T extends string | AnyObject | ArrayBuffer = any>(url: string, config?: UniRequestOptions): Promise<T>;
post<T extends string | AnyObject | ArrayBuffer = any>(url: string, config?: UniRequestOptions): Promise<T>;
put<T extends string | AnyObject | ArrayBuffer = any>(url: string, config?: UniRequestOptions): Promise<T>;
delete<T extends string | AnyObject | ArrayBuffer = any>(url: string, config?: UniRequestOptions): Promise<T>;
}
export declare const unirequest: UniRequest;
export {};