bookmarks.search()
bookmarks.search() 函式會搜尋與給定查詢匹配的書籤樹節點。
如果任何輸入引數無效或型別不正確,此函式將丟擲異常;請在 控制檯 中檢視錯誤訊息。這些異常沒有錯誤 ID,且訊息本身可能會更改,因此請不要編寫試圖解析它們的程式碼。
這是一個非同步函式,返回一個 Promise。
語法
js
let searching = browser.bookmarks.search(
query // string or object
)
引數
返回值
一個 Promise,它將以一個 bookmarks.BookmarkTreeNode 物件陣列的形式完成,每個物件代表一個匹配的書籤樹節點。結果按節點建立的順序返回。如果沒有找到結果,則陣列為空。
由 bookmarks.search() 返回的 BookmarkTreeNodes—即使是 "folder" 型別的節點—缺少 children 屬性。要獲取完整的 BookmarkTreeNode,請使用 bookmarks.getSubTree()。
示例
此示例記錄所有書籤的 ID
js
function onFulfilled(bookmarkItems) {
for (const item of bookmarkItems) {
console.log(item.id);
}
}
function onRejected(error) {
console.log(`An error: ${error}`);
}
browser.bookmarks.search({}).then(onFulfilled, onRejected);
此示例檢查當前活動標籤頁是否已新增書籤
js
function onFulfilled(bookmarkItems) {
if (bookmarkItems.length) {
console.log("active tab is bookmarked");
} else {
console.log("active tab is not bookmarked");
}
}
function onRejected(error) {
console.log(`An error: ${error}`);
}
function checkActiveTab(tab) {
browser.bookmarks.search({ url: tab.url }).then(onFulfilled, onRejected);
}
browser.browserAction.onClicked.addListener(checkActiveTab);
擴充套件程式示例
瀏覽器相容性
載入中…
注意: 此 API 基於 Chromium 的 chrome.bookmarks API。本文件源自 Chromium 程式碼中的 bookmarks.json。