1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 | module.exports = function() {
|
7 | function webpackHotUpdateCallback(chunkId, moreModules) {
|
8 |
|
9 | hotAddUpdateChunk(chunkId, moreModules);
|
10 | if (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules);
|
11 | }
|
12 |
|
13 | function hotDownloadUpdateChunk(chunkId) {
|
14 |
|
15 | var isWeex = typeof callNative === 'function';
|
16 | var updateFile = $require$.p + $hotChunkFilename$;
|
17 | if (isWeex) {
|
18 | fetch(updateFile, {
|
19 | method: 'GET',
|
20 | dataType: 'text',
|
21 | headers: {
|
22 | 'Content-Type': 'text/javascript'
|
23 | }
|
24 | })
|
25 | .then(function(response) {
|
26 | return response.text();
|
27 | })
|
28 | .then(function(text) {
|
29 | eval(text);
|
30 | })
|
31 | .catch(function(err) {
|
32 | throw err;
|
33 | });
|
34 | } else {
|
35 | var head = document.getElementsByTagName('head')[0];
|
36 | var script = document.createElement('script');
|
37 | script.type = 'text/javascript';
|
38 | script.charset = 'utf-8';
|
39 | script.src = updateFile;
|
40 | head.appendChild(script);
|
41 | }
|
42 | }
|
43 |
|
44 | function hotDownloadManifest() {
|
45 |
|
46 | return new Promise(function(resolve, reject) {
|
47 | if (typeof XMLHttpRequest === 'undefined')
|
48 | return reject(new Error('No browser support jsonp'));
|
49 | try {
|
50 | var request = new XMLHttpRequest();
|
51 | var requestPath = $require$.p + $hotMainFilename$;
|
52 | request.open('GET', requestPath, true);
|
53 | request.timeout = 10000;
|
54 | request.send(null);
|
55 | } catch (err) {
|
56 | return reject(err);
|
57 | }
|
58 | request.onreadystatechange = function() {
|
59 | if (request.readyState !== 4) return;
|
60 | if (request.status === 0) {
|
61 |
|
62 | reject(new Error('Manifest request to ' + requestPath + ' timed out.'));
|
63 | } else if (request.status === 404) {
|
64 |
|
65 | resolve();
|
66 | } else if (request.status !== 200 && request.status !== 304) {
|
67 |
|
68 | reject(new Error('Manifest request to ' + requestPath + ' failed.'));
|
69 | } else {
|
70 |
|
71 | try {
|
72 | var update = JSON.parse(request.responseText);
|
73 | } catch (e) {
|
74 | reject(e);
|
75 | return;
|
76 | }
|
77 | resolve(update);
|
78 | }
|
79 | };
|
80 | });
|
81 | }
|
82 | };
|