Deskripsi
Gunakan chrome.readingList
API untuk membaca dari dan mengubah item dalam Daftar Bacaan.
Izin
readingList
Untuk menggunakan Read List API, tambahkan izin "readingList"
dalam file manifes ekstensi:
manifest.json:
{
"name": "My reading list extension",
...
"permissions": [
"readingList"
]
}
Ketersediaan
Chrome menampilkan daftar bacaan yang terletak di panel samping. Fitur ini memungkinkan pengguna menyimpan halaman web untuk dibaca nanti atau saat offline. Gunakan Read List API untuk mengambil item yang ada dan menambahkan atau menghapus item dari daftar.
![Daftar bacaan yang menampilkan sejumlah artikel](https://developer.chrome.com/static/docs/extensions/reference/api/readingList/image/reading-list-showing-num-a0718c5ab1fe5.png?authuser=6&hl=id)
Konsep dan penggunaan
Pengurutan item
Item dalam daftar bacaan tidak dijamin memiliki urutan apa pun.
Keunikan item
Item dikunci dengan URL. Ini mencakup hash dan string kueri.
Kasus penggunaan
Bagian berikut ini menunjukkan beberapa kasus penggunaan umum untuk Read List API. Lihat Contoh ekstensi untuk mengetahui contoh ekstensi lengkap.
Tambahkan item
Untuk menambahkan item ke daftar bacaan, gunakan chrome.readingList.addEntry()
:
chrome.readingList.addEntry({
title: "New to the web platform in September | web.dev",
url: "https://developer.chrome.com/",
hasBeenRead: false
});
Item tampilan
Untuk menampilkan item dari daftar bacaan, gunakan metode chrome.readingList.query()
untuk mengambilnya.
const items = await chrome.readingList.query({});
for (const item of items) {
// Do something do display the item
}
Menandai item sebagai telah dibaca
Anda dapat menggunakan chrome.readingList.updateEntry()
untuk memperbarui judul, URL, dan status membaca. Kode berikut menandai item sebagai telah dibaca:
chrome.readingList.updateEntry({
url: "https://developer.chrome.com/",
hasBeenRead: true
});
Menghapus item
Untuk menghapus item, gunakan chrome.readingList.removeEntry()
:
chrome.readingList.removeEntry({
url: "https://developer.chrome.com/"
});
Contoh ekstensi
Untuk demo ekstensi API Daftar Bacaan lainnya, lihat contoh API Daftar Bacaan.
Jenis
AddEntryOptions
Properti
-
hasBeenRead
boolean
Akan menjadi
true
jika entri telah dibaca. -
title
string
Judul entri.
-
url
string
URL entri.
QueryInfo
Properti
-
hasBeenRead
boolean opsional
Menunjukkan apakah akan menelusuri item yang sudah dibaca (
true
) atau belum dibaca (false
). -
title
string opsional
Judul yang akan ditelusuri.
-
url
string opsional
URL yang akan ditelusuri.
ReadingListEntry
Properti
-
creationTime
angka
Waktu entri dibuat. Direkam dalam milidetik sejak 1 Januari 1970.
-
hasBeenRead
boolean
Akan menjadi
true
jika entri telah dibaca. -
lastUpdateTime
angka
Terakhir kali entri diperbarui. Nilai ini dalam milidetik sejak 1 Januari 1970.
-
title
string
Judul entri.
-
url
string
URL entri.
RemoveOptions
Properti
-
url
string
URL yang akan dihapus.
UpdateEntryOptions
Properti
-
hasBeenRead
boolean opsional
Status telah dibaca yang diperbarui. Status yang ada akan tetap ada jika nilai tidak diberikan.
-
title
string opsional
Judul baru. Kartu yang ada akan tetap ada jika nilai tidak diberikan.
-
url
string
URL yang akan diperbarui.
Metode
addEntry()
chrome.readingList.addEntry(
entry: AddEntryOptions,
callback?: function,
)
Menambahkan entri ke daftar bacaan jika tidak ada.
Parameter
-
entri
Entri yang akan ditambahkan ke daftar bacaan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.
query()
chrome.readingList.query(
info: QueryInfo,
callback?: function,
)
Mengambil semua entri yang cocok dengan properti QueryInfo
. Properti yang tidak diberikan tidak akan dicocokkan.
Parameter
-
info
Properti yang akan ditelusuri.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(entries: ReadingListEntry[]) => void
-
entri
-
Hasil
-
Promise<ReadingListEntry[]>
Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.
removeEntry()
chrome.readingList.removeEntry(
info: RemoveOptions,
callback?: function,
)
Menghapus entri dari daftar bacaan jika ada.
Parameter
-
info
Entri yang akan dihapus dari daftar bacaan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.
updateEntry()
chrome.readingList.updateEntry(
info: UpdateEntryOptions,
callback?: function,
)
Memperbarui entri daftar bacaan jika ada.
Parameter
-
info
Entri yang akan diperbarui.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.
Peristiwa
onEntryAdded
chrome.readingList.onEntryAdded.addListener(
callback: function,
)
Dipicu saat ReadingListEntry
ditambahkan ke daftar bacaan.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(entry: ReadingListEntry) => void
-
entri
-
onEntryRemoved
chrome.readingList.onEntryRemoved.addListener(
callback: function,
)
Dipicu saat ReadingListEntry
dihapus dari daftar bacaan.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(entry: ReadingListEntry) => void
-
entri
-
onEntryUpdated
chrome.readingList.onEntryUpdated.addListener(
callback: function,
)
Dipicu saat ReadingListEntry
diperbarui dalam daftar bacaan.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(entry: ReadingListEntry) => void
-
entri
-