management.uninstallSelf()

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

该 API 需要“management”API 权限

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

语法

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

参数

options 可选

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

showConfirmDialog 可选

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

dialogMessage 可选

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

返回值

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

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
uninstallSelf
dialogMessage

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

示例

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

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

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