management.uninstall()

卸载给定 ID 的附加组件。

该 API 需要“management”API 权限

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

语法

js
let uninstalling = browser.management.uninstall(
  id,                  // 字符串
  options              // 对象
)

参数

id

string,要卸载的附加组件的 ID。

options 可选

object,可能包含单一属性 showConfirmDialog 的对象。如果 showConfirmDialogtrue,浏览器将显示一个对话框询问用户是否确认卸载该附加组件。

  • 如果 id 是调用该方法的附加组件的 ID,showConfirmDialog 默认为 false
  • 如果 id 是其他附加组件的 ID,则 showConfirmDialog 选项将被忽略,并且确认对话框总是会显示。

返回值

Promise。如果用户取消卸载,则 Promise 会被拒绝并返回一个错误消息。

浏览器兼容性

BCD tables only load in the browser

示例

卸载 ID 为“addon-id”的附加组件并询问用户确认。在回调中检查用户是否取消了卸载,以及附加组件的卸载是否成功。

js
let id = "addon-id";

function onCanceled(error) {
  console.log(`取消卸载:${error}`);
}

function onUninstalled() {
  console.log("附加组件已被卸载");
}

let uninstalling = browser.management.uninstall(id);
uninstalling.then(onUninstalled, onCanceled);

备注: 该 API 基于 Chromium 的 chrome.management API。本文衍生自 Chromium 代码中的 management.json