@@ -114,7 +114,7 @@ class JsonpMainTemplatePlugin {
114114 } ) ;
115115 } ;
116116
117- const linkPreload = ( ) => {
117+ const linkPreload = mainTemplate => {
118118 const crossOriginLoading = mainTemplate . outputOptions . crossOriginLoading ;
119119 const jsonpScriptType = mainTemplate . outputOptions . jsonpScriptType ;
120120 return Template . asString ( [
@@ -181,19 +181,16 @@ class JsonpMainTemplatePlugin {
181181 }
182182 if ( needEntryChunkPrefetch ( chunk ) ) {
183183 let preloadPrefetchChildren = chunk . getChildIdsByOrders ( ) ;
184- let entryPrefetchFunction = mainTemplate . outputOptions . entryPrefetchFunction ;
185- let globalObject = mainTemplate . outputOptions . globalObject ;
186-
187184 extraCode . push (
188185 "" ,
189186 "// preload or prefetch split chunks from entry chunk" ,
190- ` ${ globalObject } [' ${ entryPrefetchFunction } '] = () => {` ,
187+ "(function prefetchOrPreloadFromEntry () {" ,
191188 preloadPrefetchChildren . preload
192189 ? Template . indent ( [
193190 `${ JSON . stringify (
194191 preloadPrefetchChildren . preload
195192 ) } .map(chunkId => {`,
196- Template . indent ( [ linkPreload ( ) ] ) ,
193+ Template . indent ( [ linkPreload ( mainTemplate ) ] ) ,
197194 `});`
198195 ] )
199196 : "" ,
@@ -206,7 +203,7 @@ class JsonpMainTemplatePlugin {
206203 `});`
207204 ] )
208205 : "" ,
209- "}" ,
206+ "})();"
210207 ) ;
211208 }
212209 if ( extraCode . length === 0 ) return source ;
@@ -274,7 +271,7 @@ class JsonpMainTemplatePlugin {
274271 mainTemplate . hooks . linkPreload . tap (
275272 "JsonpMainTemplatePlugin" ,
276273 ( _ , chunk , hash ) => {
277- return linkPreload ( ) ;
274+ return linkPreload ( mainTemplate ) ;
278275 }
279276 ) ;
280277 mainTemplate . hooks . linkPrefetch . tap (
0 commit comments