@@ -8,11 +8,11 @@ import { generateFetchWithTimeout } from "./fetch";
88
99import type { AxiosPromise , AxiosRequestConfig , AxiosResponse } from "axios" ;
1010
11- const buildFullPath = require ( "axios/lib/core/buildFullPath" ) ;
12- const settle = require ( "axios/lib/core/settle" ) ;
13- const defaults = require ( "axios/lib/defaults" ) ;
14- const buildURL = require ( "axios/lib/helpers/buildURL" ) ;
15- const { isUndefined } = require ( "axios/lib/utils" ) ;
11+ // const buildFullPath = require("axios/lib/core/buildFullPath");
12+ // const settle = require("axios/lib/core/settle");
13+ // const defaults = require("axios/lib/defaults");
14+ // const buildURL = require("axios/lib/helpers/buildURL");
15+ // const { isUndefined } = require("axios/lib/utils");
1616
1717export async function fetchAdapter ( config : AxiosRequestConfig ) : Promise < AxiosResponse < unknown > > {
1818 const { useMock } = config ;
@@ -21,9 +21,11 @@ export async function fetchAdapter(config: AxiosRequestConfig): Promise<AxiosRes
2121 console . warn ( `[axios] current request prefer use mock data, but do the original fetch` ) ;
2222 }
2323
24+ const defaults = await import ( /* @vite -ignore */ "axios/lib/defaults/index.js" ) ;
25+
2426 let request : Request | null = null ;
2527 try {
26- request = createRequest ( config ) ;
28+ request = await createRequest ( config ) ;
2729 } catch ( err ) {
2830 if ( __DEV__ ) {
2931 console . error ( `fetch adapter create error, ${ ( err as Error ) . message } ` ) ;
@@ -35,6 +37,8 @@ export async function fetchAdapter(config: AxiosRequestConfig): Promise<AxiosRes
3537
3638 const data = await fetchPromise ;
3739
40+ const settle = await import ( /* @vite -ignore */ "axios/lib/core/settle.js" ) ;
41+
3842 return new Promise ( ( resolve , reject ) => {
3943 if ( data instanceof Error ) {
4044 reject ( data ) ;
@@ -110,7 +114,7 @@ async function getResponse(request: Request, config: AxiosRequestConfig): Promis
110114/**
111115 * This function will create a Request object based on configuration's axios
112116 */
113- function createRequest ( config : AxiosRequestConfig ) : Request {
117+ async function createRequest ( config : AxiosRequestConfig ) : Promise < Request > {
114118 if ( typeof fetch === "undefined" ) {
115119 throw new Error ( "current env not have fetch function" ) ;
116120 }
@@ -151,6 +155,12 @@ function createRequest(config: AxiosRequestConfig): Request {
151155 }
152156 } ) ;
153157
158+ const buildFullPath = await import ( /* @vite -ignore */ "axios/lib/core/buildFullPath.js" ) ;
159+
160+ const buildURL = await import ( /* @vite -ignore */ "axios/lib/helpers/buildURL.js" ) ;
161+
162+ const { isUndefined } = await import ( /* @vite -ignore */ "axios/lib/utils.js" ) ;
163+
154164 // This config is similar to XHR’s withCredentials flag, but with three available values instead of two.
155165 // So if withCredentials is not set, default value 'same-origin' will be used
156166 if ( ! isUndefined ( config . withCredentials ) ) {
0 commit comments