Skip to content

Commit ea26537

Browse files
authored
Cleanup examples/api web load logic to latest (flutter#152349)
1 parent 0f16a0e commit ea26537

File tree

1 file changed

+1
-67
lines changed

1 file changed

+1
-67
lines changed

examples/api/web/index.html

Lines changed: 1 addition & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -33,72 +33,6 @@
3333
<link rel="manifest" href="manifest.json">
3434
</head>
3535
<body>
36-
<!-- This script installs service_worker.js to provide PWA functionality to
37-
application. For more information, see:
38-
https://developers.google.com/web/fundamentals/primers/service-workers -->
39-
<script>
40-
var serviceWorkerVersion = null;
41-
var scriptLoaded = false;
42-
function loadMainDartJs() {
43-
if (scriptLoaded) {
44-
return;
45-
}
46-
scriptLoaded = true;
47-
var scriptTag = document.createElement('script');
48-
scriptTag.src = 'main.dart.js';
49-
scriptTag.type = 'application/javascript';
50-
document.body.append(scriptTag);
51-
}
52-
53-
if ('serviceWorker' in navigator) {
54-
// Service workers are supported. Use them.
55-
window.addEventListener('load', function () {
56-
// Wait for registration to finish before dropping the <script> tag.
57-
// Otherwise, the browser will load the script multiple times,
58-
// potentially different versions.
59-
var serviceWorkerUrl = 'flutter_service_worker.js?v=' + serviceWorkerVersion;
60-
navigator.serviceWorker.register(serviceWorkerUrl)
61-
.then((reg) => {
62-
function waitForActivation(serviceWorker) {
63-
serviceWorker.addEventListener('statechange', () => {
64-
if (serviceWorker.state == 'activated') {
65-
console.log('Installed new service worker.');
66-
loadMainDartJs();
67-
}
68-
});
69-
}
70-
if (!reg.active && (reg.installing || reg.waiting)) {
71-
// No active web worker and we have installed or are installing
72-
// one for the first time. Simply wait for it to activate.
73-
waitForActivation(reg.installing || reg.waiting);
74-
} else if (!reg.active.scriptURL.endsWith(serviceWorkerVersion)) {
75-
// When the app updates the serviceWorkerVersion changes, so we
76-
// need to ask the service worker to update.
77-
console.log('New service worker available.');
78-
reg.update();
79-
waitForActivation(reg.installing);
80-
} else {
81-
// Existing service worker is still good.
82-
console.log('Loading app from service worker.');
83-
loadMainDartJs();
84-
}
85-
});
86-
87-
// If service worker doesn't succeed in a reasonable amount of time,
88-
// fallback to plaint <script> tag.
89-
setTimeout(() => {
90-
if (!scriptLoaded) {
91-
console.warn(
92-
'Failed to load app from service worker. Falling back to plain <script> tag.',
93-
);
94-
loadMainDartJs();
95-
}
96-
}, 4000);
97-
});
98-
} else {
99-
// Service workers not supported. Just drop the <script> tag.
100-
loadMainDartJs();
101-
}
102-
</script>
36+
<script src="flutter_bootstrap.js" async></script>
10337
</body>
10438
</html>

0 commit comments

Comments
 (0)