ContentIndex: метод getAll()
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает во всех широко используемых браузерах.
Экспериментально: Это экспериментальная технология
Перед использованием в производстве внимательно проверьте таблицу совместимости браузеров.
Примечание: Эта функция доступна в Web Workers.
Метод getAll() интерфейса ContentIndex возвращает Promise, который разрешается с итерируемым списком записей индекса контента.
Синтаксис
getAll()
Параметры
Нет.
Возвращаемое значение
Возвращает Promise, который разрешается с Array contentDescription элементов.
contentDescription-
Каждый возвращаемый элемент — это
Object, содержащий следующие данные:id-
Уникальный идентификатор
String. title-
Заголовок элемента в виде
String. Используется в отображаемых списках контента. description-
Описание элемента в виде
String. Используется в отображаемых списках контента. url-
Stringс URL соответствующего HTML-документа. Должен находиться в области действия текущего сервисного работника. categoryНеобязательно-
Категория контента в виде
String. Может принимать следующие значения:-
''ПустаяString(по умолчанию). homepagearticlevideoaudio
-
iconsНеобязательно-
Массив
Arrayресурсов изображений, представленных какObjectс данными:src-
URL
Stringисходного изображения. sizesНеобязательно-
Представление размера изображения в виде
String. typeНеобязательно-
Тип MIME изображения.
labelНеобязательно-
Строка, представляющая доступное имя значка.
Исключения
Исключения не выбрасываются. Если в индексе контента нет элементов, возвращается пустой массив Array.
Примеры
Ниже представлен пример асинхронной функции, которая извлекает элементы из индекса контента и итерируется по каждой записи, создавая список для интерфейса.
async function createReadingList() {
// access our service worker registration
const registration = await navigator.serviceWorker.ready;
// get our index entries
const entries = await registration.index.getAll();
// create a containing element
const readingListElem = document.createElement("div");
// test for entries
if (entries.length === 0) {
// if there are no entries, display a message
const message = document.createElement("p");
message.innerText =
"You currently have no articles saved for offline reading.";
readingListElem.append(message);
} else {
// if entries are present, display in a list of links to the content
const listElem = document.createElement("ul");
for (const entry of entries) {
const listItem = document.createElement("li");
const anchorElem = document.createElement("a");
anchorElem.innerText = entry.title;
anchorElem.setAttribute("href", entry.url);
listElem.append(listItem);
}
readingListElem.append(listElem);
}
}
Спецификации
| Спецификация |
|---|
| Индекс контента # content-index-getall |
Совместимость браузеров
| Десктопные | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
getAll |
Нет | Нет | Нет | Нет | Нет | 84 | Нет | 60 | Нет | 14.0 | 84 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ContentIndex/getAll