From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../serviceworkerregistration/update/index.html | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 files/zh-cn/web/api/serviceworkerregistration/update/index.html (limited to 'files/zh-cn/web/api/serviceworkerregistration/update') diff --git a/files/zh-cn/web/api/serviceworkerregistration/update/index.html b/files/zh-cn/web/api/serviceworkerregistration/update/index.html new file mode 100644 index 0000000000..aa89f12d69 --- /dev/null +++ b/files/zh-cn/web/api/serviceworkerregistration/update/index.html @@ -0,0 +1,77 @@ +--- +title: ServiceWorkerRegistration.update() +slug: Web/API/ServiceWorkerRegistration/update +tags: + - 方法 + - 更新 +translation_of: Web/API/ServiceWorkerRegistration/update +--- +
{{APIRef("Service Workers API")}}
+ +
{{domxref("ServiceWorkerRegistration")}} 的update方法尝试更新service worker。获得worker脚本的URL,逐字节匹配新获取的worker和当前的worker,存在差异的时候安装新的worker。获取worker脚本的更新操作会忽略浏览器缓存的24小时前的内容。
+ +
+

注意: 这个特性也应用于 Web Workers.

+
+ +

语法

+ +
ServiceWorkerRegistration.update();
+ +

参数

+ +

None.

+ +

返回

+ +

返回 {{domxref("Promise")}} 在resolve时对应一个 {{domxref("ServiceWorkerRegistration")}} 对象。

+ +

示例

+ +

下面的示例注册一个service worker,然后绑定事件到按钮,这样你可以有需要时,明确的更新server worker:

+ +
if ('serviceWorker' in navigator) {
+  navigator.serviceWorker.register('/sw-test/sw.js', {scope: 'sw-test'}).then(function(registration) {
+    // registration worked
+    console.log('Registration succeeded.');
+    button.onclick = function() {
+      registration.update();
+    }
+  }).catch(function(error) {
+    // registration failed
+    console.log('Registration failed with ' + error);
+  });
+};
+ +

标准

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Service Workers', '#service-worker-registration-update-method', 'ServiceWorkerRegistration.update()')}}{{Spec2('Service Workers')}}Initial definition.
+ +

Browser compatibility

+ + + +

{{Compat("api.ServiceWorkerRegistration.update")}}

+ +

See also

+ + -- cgit v1.2.3-54-g00ecf