From 2d3e7922e46b7f8399aa0beef25fabf6b2b79b55 Mon Sep 17 00:00:00 2001 From: zkp442910864 <30582109+zkp442910864@users.noreply.github.com> Date: Tue, 26 Mar 2024 15:23:07 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E6=94=B9=20routePrelo?= =?UTF-8?q?adOnLoad.ts=20=E6=8F=92=E4=BB=B6=EF=BC=8C=E6=8F=92=E5=85=A5?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=9A=84=E4=BC=98=E5=85=88=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../routePreloadOnLoad/routePreloadOnLoad.ts | 77 ++++++++++--------- 1 file changed, 40 insertions(+), 37 deletions(-) diff --git a/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts b/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts index 22525e4f137f..053c3174cb7c 100644 --- a/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts +++ b/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts @@ -219,44 +219,47 @@ export default (api: IApi) => { api.config.routeLoader?.moduleType === 'esm', }); - api.addHTMLHeadScripts(() => { - if (api.name === 'build' && routeChunkFilesMap) { - // internal tern app use map mode - return api.config.tern - ? // map mode - [ - { - type: PRELOAD_ROUTE_MAP_SCP_TYPE, - content: JSON.stringify(routeChunkFilesMap), - }, - ] - : // script mode - [ - { - content: readFileSync( - join( - TEMPLATES_DIR, - 'routePreloadOnLoad/preloadRouteFilesScp.js', - ), - 'utf-8', - ) - .replace( - '"{{routeChunkFilesMap}}"', - JSON.stringify(routeChunkFilesMap), + api.addHTMLHeadScripts({ + fn: () => { + if (api.name === 'build' && routeChunkFilesMap) { + // internal tern app use map mode + return api.config.tern + ? // map mode + [ + { + type: PRELOAD_ROUTE_MAP_SCP_TYPE, + content: JSON.stringify(routeChunkFilesMap), + }, + ] + : // script mode + [ + { + content: readFileSync( + join( + TEMPLATES_DIR, + 'routePreloadOnLoad/preloadRouteFilesScp.js', + ), + 'utf-8', ) - .replace('{{basename}}', api.config.base) - .replace( - '"{{publicPath}}"', - `${ - // handle runtimePublicPath - api.config.runtimePublicPath ? 'window.publicPath||' : '' - }"${api.config.publicPath}"`, - ), - }, - ]; - } - - return []; + .replace( + '"{{routeChunkFilesMap}}"', + JSON.stringify(routeChunkFilesMap), + ) + .replace('{{basename}}', api.config.base) + .replace( + '"{{publicPath}}"', + `${ + // handle runtimePublicPath + api.config.runtimePublicPath ? 'window.publicPath||' : '' + }"${api.config.publicPath}"`, + ), + }, + ]; + } + + return []; + }, + stage: 9999, }); api.onBuildComplete(async ({ err, stats }) => { From 98c1dcbb372586bdb0cc13bed991df05dac9961d Mon Sep 17 00:00:00 2001 From: zkp442910864 <30582109+zkp442910864@users.noreply.github.com> Date: Tue, 26 Mar 2024 15:35:57 +0800 Subject: [PATCH 2/2] Update packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts Co-authored-by: Peach --- .../src/features/routePreloadOnLoad/routePreloadOnLoad.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts b/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts index 053c3174cb7c..a42eebe7ffce 100644 --- a/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts +++ b/packages/preset-umi/src/features/routePreloadOnLoad/routePreloadOnLoad.ts @@ -259,7 +259,7 @@ export default (api: IApi) => { return []; }, - stage: 9999, + stage: Infinity, }); api.onBuildComplete(async ({ err, stats }) => {