Beschreibung
Mit der chrome.readingList API können Sie die Elemente in der Leseliste lesen und ändern.
Berechtigungen
readingListWenn Sie die Leseliste API verwenden möchten, fügen Sie der Manifestdatei der Erweiterung die Berechtigung "readingList" hinzu:
manifest.json:
{
"name": "My reading list extension",
...
"permissions": [
"readingList"
]
}
Verfügbarkeit
In Chrome gibt es eine Leseliste in der Seitenleiste. Damit können Nutzer Webseiten speichern, um sie später oder offline zu lesen. Mit der Leseliste API können Sie vorhandene Elemente abrufen und Elemente zur Liste hinzufügen oder daraus entfernen.
Konzepte und Nutzung
Artikelreihenfolge
Die Elemente in der Leseliste werden nicht in einer bestimmten Reihenfolge angezeigt.
Eindeutigkeit von Artikeln
Elemente werden nach URL indexiert. Dazu gehören der Hash und der Abfragestring.
Anwendungsfälle
In den folgenden Abschnitten werden einige gängige Anwendungsfälle für die Reading List API beschrieben. Vollständige Beispiele für Erweiterungen finden Sie unter Beispiele für Erweiterungen.
Hinzufügen
Verwenden Sie browser.readingList.addEntry(), um der Leseliste ein Element hinzuzufügen:
browser.readingList.addEntry({
title: "New to the web platform in September | web.dev",
url: "https://developer.chrome.com/",
hasBeenRead: false
});
Elemente anzeigen
Wenn Sie Elemente aus der Leseliste anzeigen möchten, rufen Sie sie mit der Methode browser.readingList.query() ab.
const items = await browser.readingList.query({});
for (const item of items) {
// Do something do display the item
}
Element als gelesen markieren
Mit browser.readingList.updateEntry() können Sie den Titel, die URL und den Lesestatus aktualisieren. Mit dem folgenden Code wird ein Element als gelesen markiert:
browser.readingList.updateEntry({
url: "https://developer.chrome.com/",
hasBeenRead: true
});
Elemente entfernen
Verwenden Sie browser.readingList.removeEntry(), um ein Element zu entfernen:
browser.readingList.removeEntry({
url: "https://developer.chrome.com/"
});
Beispiele für Erweiterungen
Weitere Demos für die Leselisten-API-Erweiterungen finden Sie im Leselisten-API-Beispiel.
Typen
AddEntryOptions
Attribute
-
hasBeenRead
boolean
Ist
true, wenn der Eintrag gelesen wurde. -
Titel
String
Der Titel des Eintrags.
-
URL
String
Die URL des Eintrags.
QueryInfo
Attribute
-
hasBeenRead
Boolesch optional
Gibt an, ob nach gelesenen (
true) oder ungelesenen (false) Elementen gesucht werden soll. -
Titel
String optional
Ein Titel, nach dem gesucht werden soll.
-
URL
String optional
Eine URL, nach der gesucht werden soll.
ReadingListEntry
Attribute
-
creationTime
Zahl
Der Zeitpunkt, zu dem der Eintrag erstellt wurde. Wird in Millisekunden seit dem 1. Januar 1970 aufgezeichnet.
-
hasBeenRead
boolean
Ist
true, wenn der Eintrag gelesen wurde. -
lastUpdateTime
Zahl
Der Zeitpunkt, zu dem der Eintrag zuletzt aktualisiert wurde. Dieser Wert wird in Millisekunden seit dem 1. Januar 1970 angegeben.
-
Titel
String
Der Titel des Eintrags.
-
URL
String
Die URL des Eintrags.
RemoveOptions
Attribute
-
URL
String
Die zu entfernende URL.
UpdateEntryOptions
Attribute
-
hasBeenRead
Boolesch optional
Der aktualisierte Lesestatus. Wenn kein Wert angegeben wird, bleibt der vorhandene Status erhalten.
-
Titel
String optional
Der neue Titel. Wenn kein Wert angegeben wird, bleibt die vorhandene Kachel erhalten.
-
URL
String
Die URL, die aktualisiert wird.
Methoden
addEntry()
chrome.readingList.addEntry(
entry: AddEntryOptions,
): Promise<void>
Fügt der Leseliste einen Eintrag hinzu, falls er noch nicht vorhanden ist.
Parameter
-
Eintrag
Der Eintrag, der der Leseliste hinzugefügt werden soll.
Ausgabe
-
Promise<void>
Das Problem wird behoben, sobald der Eintrag hinzugefügt wurde.
query()
chrome.readingList.query(
info: QueryInfo,
): Promise<ReadingListEntry[]>
Ruft alle Einträge ab, die mit den QueryInfo-Attributen übereinstimmen. Nicht angegebene Properties werden nicht abgeglichen.
Parameter
-
Info
Die Eigenschaften, nach denen gesucht werden soll.
Ausgabe
-
Promise<ReadingListEntry[]>
Das Problem wird behoben, sobald die Einträge abgeglichen wurden.
removeEntry()
chrome.readingList.removeEntry(
info: RemoveOptions,
): Promise<void>
Entfernt einen Eintrag aus der Leseliste, sofern er vorhanden ist.
Parameter
-
Info
Der Eintrag, der aus der Leseliste entfernt werden soll.
Ausgabe
-
Promise<void>
Das Problem ist behoben, sobald der Eintrag entfernt wurde.
updateEntry()
chrome.readingList.updateEntry(
info: UpdateEntryOptions,
): Promise<void>
Aktualisiert einen Eintrag in der Leseliste, sofern er vorhanden ist.
Parameter
-
Info
Der zu aktualisierende Eintrag.
Ausgabe
-
Promise<void>
Das Problem wird behoben, sobald die übereinstimmenden Einträge aktualisiert wurden.
Ereignisse
onEntryAdded
chrome.readingList.onEntryAdded.addListener(
callback: function,
)
Wird ausgelöst, wenn der Leseliste ein ReadingListEntry hinzugefügt wird.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(entry: ReadingListEntry) => void
-
Eintrag
-
onEntryRemoved
chrome.readingList.onEntryRemoved.addListener(
callback: function,
)
Wird ausgelöst, wenn ein ReadingListEntry aus der Leseliste entfernt wird.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(entry: ReadingListEntry) => void
-
Eintrag
-
onEntryUpdated
chrome.readingList.onEntryUpdated.addListener(
callback: function,
)
Wird ausgelöst, wenn ein ReadingListEntry in der Leseliste aktualisiert wird.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(entry: ReadingListEntry) => void
-
Eintrag
-