ContentIndex: getAll() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die getAll() Methode der ContentIndex Schnittstelle gibt ein Promise zurück, das mit einer iterierbaren Liste von Inhaltsindexeinträgen aufgelöst wird.
Syntax
getAll()
Parameter
Keine.
Rückgabewert
Gibt ein Promise zurück, das mit einem Array von contentDescription-Elementen aufgelöst wird.
contentDescription-
Jedes zurückgegebene Element ist ein
Objectund enthält die folgenden Daten:id-
Ein eindeutiger
String-Bezeichner. title-
Ein
String-Titel des Elements. Verwendet in benutzerdefinierten Inhaltslisten. description-
Eine
String-Beschreibung des Elements. Verwendet in benutzerdefinierten Inhaltslisten. url-
Ein
Stringmit der URL des entsprechenden HTML-Dokuments. Muss unter dem Bereich des aktuellen Service Workers liegen. categoryOptional-
Ein
Stringder die Kategorie des Inhalts definiert. Kann sein:''Ein leererString, dies ist der Standard.homepagearticlevideoaudio
iconsOptional-
Ein
Arrayvon Bildressourcen, definiert als einObjectmit den folgenden Daten:src-
Eine URL
Stringdes Quellbildes. sizesOptional-
Eine
String-Darstellung der Bildgröße. typeOptional-
Der MIME-Typ des Bildes.
labelOptional-
Ein String, der den zugänglichen Namen des Symbols repräsentiert.
Ausnahmen
Es werden keine Ausnahmen ausgelöst. Wenn keine Elemente im Inhaltsindex vorhanden sind, wird ein leeres Array zurückgegeben.
Beispiele
Das folgende Beispiel zeigt eine asynchrone Funktion, die Elemente innerhalb des Inhaltsindex abruft und über jeden Eintrag iteriert, um eine Liste für die Benutzeroberfläche zu erstellen.
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);
}
}
Spezifikationen
| Specification |
|---|
| Content Index> # content-index-getall> |
Browser-Kompatibilität
Loading…