如何跟踪Chrome扩展程序是否已创建上下文菜单项?

AGa*_*yer 6 google-chrome-extension

chrome.contextMenus只有四种方法:

create
update
remove
removeAll
Run Code Online (Sandbox Code Playgroud)

我想知道如何检查是否已经创建了一个菜单?

我试过这个:

try {
  chrome.contextMenus.update("byname", {});
} catch (e) {
 // doesn't exist
}
Run Code Online (Sandbox Code Playgroud)

但似乎错误无法捕获(但在控制台中显示).

感谢您的任何提示!

Rob*_*b W 3

每次chrome.contextMenus.create调用都会返回一个唯一的标识符。将这些标识符存储在数组或散列中以跟踪它们。

  • 这并不能回答问题。Op 询问是否可以执行“if(chrome.contextMenus.exists(id))”。保存每个创建的 id 并不是一个好的解决方案,特别是因为您可以再次删除上下文菜单的条目 (7认同)