menus.removeAll()

移除扩展程序添加的所有菜单项。

为了与其他浏览器兼容,Firefox 将此方法同时通过 contextMenusmenus 命名空间提供。

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

语法

js
let removing = browser.menus.removeAll()

参数

无。

返回值

一个 Promise,当所有项都已移除时,它将以无参数的形式解析。

示例

此示例添加了两个菜单项。当用户点击标有“全部移除!”的项时,扩展程序将使用 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