bookmarks.getTree()
bookmarks.getTree() 返回一个数组,其中包含书签树的根节点,该节点是一个 bookmarks.BookmarkTreeNode 对象。
如果它们是文件夹的话,你可以通过其 children 属性及其后代的 children 属性递归地访问整个树。
这是一个返回 Promise 的异步函数。
语法
js
let gettingTree = browser.bookmarks.getTree() 参数
无。
返回值
一个 Promise,其会兑现一个包含代表根节点的 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。