BackgroundFetchRegistration: progress event
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Экспериментальная возможность: Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.
Событие progress
интерфейса BackgroundFetchRegistration
происходит когда выполняется связанные фоновый запрос.
Практически это событие происходит, когда любое из следующих свойств возвращает новое значение:
uploaded
,downloaded
,result
, илиfailureReason
.
Синтаксис
Используйте имя события в таких методах как addEventListener()
, или установите свойство события onprogress
в соответствующем объекте BackgroundFetchRegistration
.
addEventListener("progress", (event) => {});
onprogress = (event) => {};
Тип события
Общий Event
без дополнительных параметров.
Пример
Следующий пример демонстрирует как вывести ход загрузки в консоль. Сначала код проверяет был ли предоставлен downloadTotal
, когда фоновый запрос был зарегистрирован. The code first checks that a downloadTotal
was provided when the background fetch was registered. Затем это значение используется для расчета процента на основе свойства downloaded
.
bgFetch.addEventListener("progress", () => {
if (!bgFetch.downloadTotal) return;
const percent = Math.round(
(bgFetch.downloaded / bgFetch.downloadTotal) * 100,
);
console.log(`Download progress: ${percent}%`);
});
Спецификации
Specification |
---|
Background Fetch # background-fetch-registration-events |
Совместимость с браузерами
BCD tables only load in the browser