bookmarks.getTree()
bookmarks.getTree() 返回一个数组,其中包含书签树的根节点,该根节点是一个 bookmarks.BookmarkTreeNode 对象。
您可以使用其 children 属性以及后代节点的 children 属性(如果它们本身是文件夹)来递归访问整个树。
这是一个异步函数,返回一个 Promise。
语法
js
let gettingTree = browser.bookmarks.getTree()
参数
无。
返回值
一个 Promise,它将以包含一个对象的数组形式被 fulfilled,该对象是一个 bookmarks.BookmarkTreeNode 对象,代表根节点。
示例
此示例将打印出整个书签树。
js
function makeIndent(indentLength) {
return ".".repeat(indentLength);
}
function logItems(bookmarkItem, indent) {
if (bookmarkItem.url) {
console.log(makeIndent(indent) + bookmarkItem.url);
} else {
console.log(`${makeIndent(indent)}Folder`);
indent++;
}
if (bookmarkItem.children) {
for (const child of bookmarkItem.children) {
logItems(child, indent);
}
}
indent--;
}
function logTree(bookmarkItems) {
logItems(bookmarkItems[0], 0);
}
function onRejected(error) {
console.log(`An error: ${error}`);
}
let gettingTree = browser.bookmarks.getTree();
gettingTree.then(logTree, onRejected);
浏览器兼容性
加载中…
注意:此 API 基于 Chromium 的 chrome.bookmarks API。本文档源自 Chromium 代码中的 bookmarks.json。