management.uninstallSelf()

卸载调用此方法的附加组件。

该 API 需要“management”API 权限

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

语法

js
let uninstallingSelf = browser.management.uninstallSelf(
  options              // 对象
)

参数

options 可选

object,可能包含两个可选属性的对象:

showConfirmDialog 可选

布尔值,如果 showConfirmDialogtrue,浏览器将显示一个对话框询问用户是否确认卸载该附加组件。默认为 false

dialogMessage 可选

字符串,将在确认对话框中显示的额外消息。

返回值

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

浏览器兼容性

BCD tables only load in the browser

示例

卸载附加组件,提示用户确认,并在回调中检查用户是否取消了卸载。

需要注意的是,我们没有传入一个成功的处理函数,因为如果卸载成功,附加组件将不存在,也就无法处理该回调。

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

let uninstalling = browser.management.uninstallSelf({
  showConfirmDialog: true,
});

uninstalling.then(null, onCanceled);

实现一样的功能,但是我们向对话框中添加了一条自定义的信息:

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

let uninstalling = browser.management.uninstallSelf({
  showConfirmDialog: true,
  dialogMessage: "测试自卸载功能",
});

uninstalling.then(null, onCanceled);

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