downloads.open()
**open()
** 函数是 downloads
API 的一部分,它使用相关应用程序打开已下载的文件。当项目首次打开时,会触发 downloads.onChanged
事件。
要在扩展中使用此函数,您必须请求 “downloads.open” 清单权限,以及 “downloads” 权限。此外,您只能在 用户操作 处理程序内部调用此函数。
这是一个异步函数,它返回一个 Promise
。
语法
js
let opening = browser.downloads.open(
downloadId // integer
)
参数
downloadId
-
一个
integer
,表示要打开的downloads.DownloadItem
的id
。
返回值
一个 Promise
。如果请求成功,则 promise 将用无参数的方式完成。如果请求失败,则 promise 将用错误消息拒绝。
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
示例
此示例打开最近下载的项目
js
function onOpened() {
console.log(`Opened download item`);
}
function onError(error) {
console.log(`Error opening item: ${error}`);
}
function openDownload(downloadItems) {
if (downloadItems.length > 0) {
let opening = browser.downloads.open(downloadItems[0].id);
opening.then(onOpened, onError);
}
}
let searching = browser.downloads.search({
limit: 1,
orderBy: ["-startTime"],
});
searching.then(openDownload, onError);
示例扩展
注意:此 API 基于 Chromium 的 chrome.downloads
API。