ServiceWorkerRegistration: phương thức update()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
update() là phương thức của giao diện ServiceWorkerRegistration cố gắng cập nhật service worker. Nó lấy URL của tập lệnh worker, và nếu worker mới không giống hệt từng byte với worker hiện tại, nó sẽ cài đặt worker mới. Việc tải tập lệnh worker sẽ bỏ qua mọi bộ nhớ đệm của trình duyệt nếu lần tải trước đó đã xảy ra cách đây hơn 24 giờ.
Cú pháp
update()
Tham số
Không.
Giá trị trả về
Một Promise được phân giải thành một đối tượng ServiceWorkerRegistration.
Ví dụ
Ví dụ đơn giản sau đăng ký một service worker rồi thêm một trình xử lý sự kiện vào nút để bạn có thể cập nhật service worker một cách tường minh bất cứ khi nào muốn:
if ("serviceWorker" in navigator) {
navigator.serviceWorker
.register("/sw.js", { scope: "/" })
.then((registration) => {
// đăng ký thành công
console.log("Registration succeeded.");
button.onclick = () => {
registration.update();
};
})
.catch((error) => {
// đăng ký thất bại
console.error(`Registration failed with ${error}`);
});
}
Đặc tả kỹ thuật
| Specification |
|---|
| Service Workers Nightly> # service-worker-registration-update> |