menus.removeAll()

删除扩展添加的所有菜单项。

为了与其他浏览器兼容,Firefox 通过 `contextMenus` 命名空间和 `menus` 命名空间提供此方法。

这是一个异步函数,它返回一个 Promise

语法

js
let removing = browser.menus.removeAll()

参数

无。

返回值

一个 Promise,当所有项都被删除后,它将以没有参数的方式完成。

浏览器兼容性

BCD 表仅在浏览器中加载

示例

此示例添加了两个菜单项。当用户单击标记为“删除所有!”的项时,扩展使用 `removeAll()` 删除这两个项。

js
function onRemoved() {
  console.log("items removed successfully");
}

browser.menus.create({
  id: "click-me",
  title: "Click me!",
  contexts: ["all"],
});

browser.menus.create({
  id: "remove-all",
  title: "Remove all!",
  contexts: ["all"],
});

browser.menus.onClicked.addListener((info, tab) => {
  if (info.menuItemId === "remove-all") {
    let removing = browser.menus.removeAll();
    removing.then(onRemoved);
  }
});

注意:此 API 基于 Chromium 的 chrome.contextMenus API。此文档源自 Chromium 代码中的 context_menus.json