ServiceWorkerGlobalScope: sự kiện sync
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is only available in Service Workers.
Sự kiện sync của giao diện ServiceWorkerGlobalScope được kích hoạt khi trang (hoặc worker) đã đăng ký sự kiện với SyncManager đang chạy và ngay khi kết nối mạng khả dụng.
Sự kiện này không thể hủy và không nổi bọt.
Cú pháp
Sử dụng tên sự kiện trong các phương thức như addEventListener(), hoặc thiết lập một thuộc tính trình xử lý sự kiện.
addEventListener("sync", (event) => { })
onsync = (event) => { }
Loại sự kiện
Một SyncEvent. Kế thừa từ ExtendableEvent và Event.
Thuộc tính sự kiện
Kế thừa các thuộc tính từ giao diện tổ tiên, ExtendableEvent và Event.
SyncEvent.tagRead only-
Trả về định danh do nhà phát triển định nghĩa cho
SyncEventnày. SyncEvent.lastChanceRead only-
Trả về
truenếu user agent sẽ không thực hiện thêm bất kỳ lần đồng bộ nào sau lần thử hiện tại.
Ví dụ
Ví dụ sau cho thấy cách phản hồi một sự kiện đồng bộ trong service worker.
self.addEventListener("sync", (event) => {
if (event.tag === "sync-messages") {
event.waitUntil(sendOutboxMessages());
}
});
Bạn cũng có thể thiết lập trình xử lý sự kiện bằng cách sử dụng thuộc tính onsync:
self.onsync = (event) => {
// …
};
Đặc tả kỹ thuật
| Specification |
|---|
| Web Background Synchronization> # dom-serviceworkerglobalscope-onsync> |