@@ -154,6 +154,7 @@ class JsonpMainTemplatePlugin {
154
154
155
155
return Template . asString ( [
156
156
"var script = document.createElement('script');" ,
157
+ "var onScriptComplete;" ,
157
158
jsonpScriptType
158
159
? `script.type = ${ JSON . stringify ( jsonpScriptType ) } ;`
159
160
: "" ,
@@ -168,12 +169,7 @@ class JsonpMainTemplatePlugin {
168
169
) ,
169
170
"}" ,
170
171
"script.src = jsonpScriptSrc(chunkId);" ,
171
- "var timeout = setTimeout(function(){" ,
172
- Template . indent ( [
173
- "onScriptComplete({ type: 'timeout', target: script });"
174
- ] ) ,
175
- `}, ${ chunkLoadTimeout } );` ,
176
- "function onScriptComplete(event) {" ,
172
+ "onScriptComplete = function (event) {" ,
177
173
Template . indent ( [
178
174
"// avoid mem leaks in IE." ,
179
175
"script.onerror = script.onload = null;" ,
@@ -196,6 +192,11 @@ class JsonpMainTemplatePlugin {
196
192
"}"
197
193
] ) ,
198
194
"};" ,
195
+ "var timeout = setTimeout(function(){" ,
196
+ Template . indent ( [
197
+ "onScriptComplete({ type: 'timeout', target: script });"
198
+ ] ) ,
199
+ `}, ${ chunkLoadTimeout } );` ,
199
200
"script.onerror = script.onload = onScriptComplete;"
200
201
] ) ;
201
202
}
0 commit comments