chrome.readingList

Descripción

Usa la API de chrome.readingList para leer y modificar los elementos de la Lista de lectura.

Permisos

readingList

Para usar la API de Reading List, agrega el permiso "readingList" en el archivo de manifiesto de la extensión:

manifest.json:

{
  "name": "My reading list extension",
  ...
  "permissions": [
    "readingList"
  ]
}

Disponibilidad

Chrome 120 y versiones posteriores MV3 y versiones posteriores

Chrome cuenta con una lista de lectura ubicada en el panel lateral. Permite a los usuarios guardar páginas web para leerlas más tarde o cuando no tienen conexión. Usa la API de Reading List para recuperar elementos existentes y agregar o quitar elementos de la lista.

Lista de lectura que muestra varios artículos
Lista de lectura que muestra varios artículos

Conceptos y uso

Orden de los artículos

Los elementos de la lista de lectura no están en ningún orden garantizado.

Exclusividad del artículo

Los elementos están vinculados por URL. Esto incluye el hash y la cadena de consulta.

Casos de uso

En las siguientes secciones, se muestran algunos casos de uso comunes para la API de Reading List. Consulta Muestras de extensiones para ver ejemplos completos de extensiones.

Cómo agregar un elemento

Para agregar un elemento a la lista de lectura, usa chrome.readingList.addEntry():

chrome.readingList.addEntry({
  title: "New to the web platform in September | web.dev",
  url: "https://developer.chrome.com/",
  hasBeenRead: false
});

Elementos visibles

Para mostrar elementos de la lista de lectura, usa el método chrome.readingList.query() para recuperarlos.

const items = await chrome.readingList.query({});

for (const item of items) {
  // Do something do display the item
}

Cómo marcar un elemento como leído

Puedes usar chrome.readingList.updateEntry() para actualizar el título, la URL y el estado de lectura. El siguiente código marca un elemento como leído:

chrome.readingList.updateEntry({
  url: "https://developer.chrome.com/",
  hasBeenRead: true
});

Cómo quitar un elemento

Para quitar un elemento, usa chrome.readingList.removeEntry():

chrome.readingList.removeEntry({
  url: "https://developer.chrome.com/"
});

Muestras de extensiones

Para obtener más demostraciones de las extensiones de la API de Reading List, consulta la muestra de la API de Reading List.

Tipos

AddEntryOptions

Propiedades

  • hasBeenRead

    boolean

    Será true si se leyó la entrada.

  • título

    cadena

    Es el título de la entrada.

  • url

    cadena

    Se refiere a la URL de la entrada.

QueryInfo

Propiedades

  • hasBeenRead

    booleano opcional

    Indica si se deben buscar elementos leídos (true) o no leídos (false).

  • título

    cadena opcional

    Título para buscar.

  • url

    cadena opcional

    Una URL para buscar.

ReadingListEntry

Propiedades

  • creationTime

    número

    La hora en que se creó la entrada. Se registra en milisegundos desde el 1 de enero de 1970.

  • hasBeenRead

    boolean

    Será true si se leyó la entrada.

  • lastUpdateTime

    número

    Corresponde a la última vez que se actualizó la entrada. Este valor se expresa en milisegundos desde el 1 de enero de 1970.

  • título

    cadena

    Es el título de la entrada.

  • url

    cadena

    Se refiere a la URL de la entrada.

RemoveOptions

Propiedades

  • url

    cadena

    La URL que se quitará.

UpdateEntryOptions

Propiedades

  • hasBeenRead

    booleano opcional

    El estado de lectura actualizado. El estado existente permanece si no se proporciona un valor.

  • título

    cadena opcional

    Título nuevo. Si no se proporciona un valor, el mosaico existente permanecerá activo.

  • url

    cadena

    La URL que se actualizará.

Métodos

addEntry()

Promesa
chrome.readingList.addEntry(
  entry: AddEntryOptions,
  callback?: function,
)

Agrega una entrada a la lista de lectura si no existe.

Parámetros

  • La entrada que se agregará a la lista de lectura.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

query()

Promesa
chrome.readingList.query(
  info: QueryInfo,
  callback?: function,
)

Recupera todas las entradas que coincidan con las propiedades de QueryInfo. No se establecerán coincidencias con las propiedades que no se proporcionen.

Parámetros

Devuelve

  • Promise<ReadingListEntry[]>

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

removeEntry()

Promesa
chrome.readingList.removeEntry(
  info: RemoveOptions,
  callback?: function,
)

Quita una entrada de la lista de lectura si existe.

Parámetros

  • La entrada que se quitará de la lista de lectura.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

updateEntry()

Promesa
chrome.readingList.updateEntry(
  info: UpdateEntryOptions,
  callback?: function,
)

Actualiza una entrada de la lista de lectura si existe.

Parámetros

  • La entrada que se actualizará.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

Eventos

onEntryAdded

chrome.readingList.onEntryAdded.addListener(
  callback: function,
)

Se activa cuando se agrega un ReadingListEntry a la lista de lectura.

Parámetros

onEntryRemoved

chrome.readingList.onEntryRemoved.addListener(
  callback: function,
)

Se activa cuando se quita un ReadingListEntry de la lista de lectura.

Parámetros

onEntryUpdated

chrome.readingList.onEntryUpdated.addListener(
  callback: function,
)

Se activa cuando se actualiza un ReadingListEntry en la lista de lectura.

Parámetros