@@ -21,13 +21,13 @@ function getAsyncChunkName (chunkName) {
2121 return ''
2222}
2323
24- function getAsyncSuspense ( type , moduleId , componentRequest , componentName , chunkName , fallback , loading ) {
24+ function getAsyncSuspense ( type , moduleId , componentRequest , componentName , chunkName , getFallback , getLoading ) {
2525 return `getAsyncSuspense({
2626 type: ${ JSON . stringify ( type ) } ,
2727 moduleId: ${ JSON . stringify ( moduleId ) } ,
2828 chunkName: ${ JSON . stringify ( chunkName ) } ,
29- loading : ${ loading } ,
30- fallback : ${ fallback } ,
29+ getFallback : ${ getFallback } ,
30+ getLoading : ${ getLoading } ,
3131 getChildren () {
3232 return import(${ getAsyncChunkName ( chunkName ) } ${ componentRequest } ).then(function (res) {
3333 return getComponent(res, {displayName: ${ JSON . stringify ( componentName ) } })
@@ -61,9 +61,9 @@ function buildPagesMap ({ localPagesMap, loaderContext, jsonConfig, rnConfig })
6161 const pageRequest = stringifyRequest ( loaderContext , pageCfg . resource )
6262 if ( pageCfg . async ) {
6363 const moduleId = mpx . getModuleId ( pageCfg . resource )
64- const fallback = rnConfig . asyncChunk && rnConfig . asyncChunk . fallback && getComponent ( stringifyRequest ( loaderContext , addQuery ( rnConfig . asyncChunk . fallback , { isComponent : true } ) ) , 'PageFallback' )
65- const loading = rnConfig . asyncChunk && rnConfig . asyncChunk . loading && getComponent ( stringifyRequest ( loaderContext , addQuery ( rnConfig . asyncChunk . loading , { isComponent : true } ) ) , 'PageLoading' )
66- pagesMap [ pagePath ] = getComponentGetter ( getAsyncSuspense ( 'page' , moduleId , pageRequest , 'Page' , pageCfg . async , fallback , loading ) )
64+ const getFallback = rnConfig . asyncChunk && rnConfig . asyncChunk . fallback && getComponentGetter ( getComponent ( stringifyRequest ( loaderContext , addQuery ( rnConfig . asyncChunk . fallback , { isComponent : true } ) ) , 'PageFallback' ) )
65+ const getLoading = rnConfig . asyncChunk && rnConfig . asyncChunk . loading && getComponentGetter ( getComponent ( stringifyRequest ( loaderContext , addQuery ( rnConfig . asyncChunk . loading , { isComponent : true } ) ) , 'PageLoading' ) )
66+ pagesMap [ pagePath ] = getAsyncSuspense ( 'page' , moduleId , pageRequest , 'Page' , pageCfg . async , getFallback , getLoading )
6767 } else {
6868 // 为了保持小程序中app->page->component的js执行顺序,所有的page和component都改为require引入
6969 pagesMap [ pagePath ] = getComponentGetter ( getComponent ( pageRequest , 'Page' ) )
@@ -91,7 +91,7 @@ function buildComponentsMap ({ localComponentsMap, builtInComponentsMap, loaderC
9191 if ( componentCfg . async ) {
9292 const moduleId = mpx . getModuleId ( componentCfg . resource )
9393 const placeholder = jsonConfig . componentPlaceholder && jsonConfig . componentPlaceholder [ componentName ]
94- let fallback
94+ let getFallback
9595 if ( placeholder ) {
9696 if ( localComponentsMap [ placeholder ] ) {
9797 const placeholderCfg = localComponentsMap [ placeholder ]
@@ -101,11 +101,11 @@ function buildComponentsMap ({ localComponentsMap, builtInComponentsMap, loaderC
101101 new Error ( `[json processor][${ loaderContext . resource } ]: componentPlaceholder ${ placeholder } should not be a async component, please check!` )
102102 )
103103 }
104- fallback = getComponent ( placeholderRequest , placeholder )
104+ getFallback = getComponentGetter ( getComponent ( placeholderRequest , placeholder ) )
105105 } else {
106106 const tag = `mpx-${ placeholder } `
107107 if ( isBuildInReactTag ( tag ) ) {
108- fallback = getBuiltInComponent ( getBuiltInComponentRequest ( tag ) )
108+ getFallback = getComponentGetter ( getBuiltInComponent ( getBuiltInComponentRequest ( tag ) ) )
109109 } else {
110110 loaderContext . emitError (
111111 new Error ( `[json processor][${ loaderContext . resource } ]: componentPlaceholder ${ placeholder } is not built-in component, please check!` )
@@ -117,7 +117,7 @@ function buildComponentsMap ({ localComponentsMap, builtInComponentsMap, loaderC
117117 new Error ( `[json processor][${ loaderContext . resource } ]: ${ componentName } has no componentPlaceholder, please check!` )
118118 )
119119 }
120- componentsMap [ componentName ] = getComponentGetter ( getAsyncSuspense ( 'component' , moduleId , componentRequest , componentName , componentCfg . async , fallback ) )
120+ componentsMap [ componentName ] = getAsyncSuspense ( 'component' , moduleId , componentRequest , componentName , componentCfg . async , getFallback )
121121 } else {
122122 componentsMap [ componentName ] = getComponentGetter ( getComponent ( componentRequest , componentName ) )
123123 }
0 commit comments