Описание
Используйте chrome.readingList API, чтобы читать и изменять элементы в списке для чтения.
Разрешения
readingListЧтобы использовать Reading List API, добавьте разрешение "readingList" в файл манифеста расширения:
manifest.json:
{
"name": "My reading list extension",
...
"permissions": [
"readingList"
]
}
Доступность
В Chrome есть список для чтения, который находится на боковой панели. Она позволяет сохранять веб-страницы, чтобы читать их позже или в офлайн-режиме. Используйте Reading List API, чтобы получать существующие элементы, а также добавлять и удалять элементы из списка.
Основные понятия и использование
Порядок объектов
Элементы в списке для чтения не упорядочены.
Уникальность товаров
Объекты идентифицируются по URL. включая хеш и строку запроса.
Примеры использования
В следующих разделах показаны некоторые распространенные варианты использования Reading List API. Полные примеры расширений можно найти в образцах расширений.
Добавить элемент
Чтобы добавить элемент в список для чтения, используйте browser.readingList.addEntry():
browser.readingList.addEntry({
title: "New to the web platform in September | web.dev",
url: "https://developer.chrome.com/",
hasBeenRead: false
});
Показать элементы
Чтобы показать элементы из списка для чтения, используйте метод browser.readingList.query().
const items = await browser.readingList.query({});
for (const item of items) {
// Do something do display the item
}
Как отметить элемент как прочитанный
Вы можете использовать browser.readingList.updateEntry(), чтобы изменить название, URL и статус прочтения. Следующий код помечает элемент как прочитанный:
browser.readingList.updateEntry({
url: "https://developer.chrome.com/",
hasBeenRead: true
});
Как удалить объект
Чтобы удалить объект, используйте browser.readingList.removeEntry():
browser.readingList.removeEntry({
url: "https://developer.chrome.com/"
});
Примеры расширений
Другие примеры расширений Reading List API можно найти в образце Reading List API.
Типы
AddEntryOptions
Свойства
-
hasBeenRead
Логическое значение
Если запись прочитана, будет возвращено значение
true. -
название
string
Название записи.
-
url
string
URL записи.
QueryInfo
Свойства
-
hasBeenRead
Логическое значение (необязательно)
Указывает, какие объекты искать: прочитанные (
true) или непрочитанные (false). -
название
Строка (необязательно)
Название, которое нужно найти.
-
url
Строка (необязательно)
URL, который нужно найти.
ReadingListEntry
Свойства
-
creationTime
число
Время создания записи. Записывается в миллисекундах с 1 января 1970 г.
-
hasBeenRead
Логическое значение
Если запись прочитана, будет возвращено значение
true. -
lastUpdateTime
число
Время последнего обновления записи. Значение указывается в миллисекундах, прошедших с 1 января 1970 г.
-
название
string
Название записи.
-
url
string
URL записи.
RemoveOptions
Свойства
-
url
string
URL, который нужно удалить.
UpdateEntryOptions
Свойства
-
hasBeenRead
Логическое значение (необязательно)
Обновленный статус прочтения. Если значение не указано, статус останется прежним.
-
название
Строка (необязательно)
Новое название. Если значение не указано, останется существующая карточка.
-
url
string
URL, который будет обновлен.
Методы
addEntry()
browser.readingList.addEntry(
entry: AddEntryOptions,
): Promise<void>
Добавляет запись в список для чтения, если ее там нет.
Параметры
-
запись
Запись, которую нужно добавить в список для чтения.
Возвраты
-
Promise<void>
Распознается после добавления записи.
query()
browser.readingList.query(
info: QueryInfo,
): Promise<ReadingListEntry[]>
Получает все записи, соответствующие свойствам QueryInfo. Неуказанные свойства не будут сопоставляться.
Параметры
-
информация
Свойства, которые нужно найти.
Возвраты
-
Promise<ReadingListEntry[]>
Выполняется после сопоставления записей.
removeEntry()
browser.readingList.removeEntry(
info: RemoveOptions,
): Promise<void>
Удаляет запись из списка для чтения, если она существует.
Параметры
-
информация
Запись, которую нужно удалить из списка для чтения.
Возвраты
-
Promise<void>
Выполняется после удаления записи.
updateEntry()
browser.readingList.updateEntry(
info: UpdateEntryOptions,
): Promise<void>
Обновляет запись в списке для чтения, если она существует.
Параметры
-
информация
Запись, которую нужно обновить.
Возвраты
-
Promise<void>
Выполняется после обновления совпадающих записей.
События
onEntryAdded
browser.readingList.onEntryAdded.addListener(
callback: function,
)
Срабатывает, когда ReadingListEntry добавляется в список для чтения.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(entry: ReadingListEntry) => void
-
запись
-
onEntryRemoved
browser.readingList.onEntryRemoved.addListener(
callback: function,
)
Срабатывает, когда ReadingListEntry удаляется из списка для чтения.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(entry: ReadingListEntry) => void
-
запись
-
onEntryUpdated
browser.readingList.onEntryUpdated.addListener(
callback: function,
)
Срабатывает, когда ReadingListEntry обновляется в списке для чтения.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(entry: ReadingListEntry) => void
-
запись
-