downloads.erase()
downloads API 的 erase() 函数会从浏览器的下载历史记录中清除匹配的 DownloadItems,而不会从磁盘删除下载的文件。
要从磁盘中删除文件,您需要使用 downloads.removeFile()。
这是一个异步函数,返回一个 Promise。
注意:如果您想从磁盘删除下载的文件并从历史记录中清除它,您必须在调用 erase() 之前调用 downloads.removeFile()。如果您尝试反向操作,在调用 downloads.removeFile() 时会收到错误,因为根据浏览器来看,该文件已不存在。
语法
js
let erasing = browser.downloads.erase(
query // DownloadQuery
)
参数
query-
一个
downloads.DownloadQuery对象。
返回值
一个 Promise。如果调用成功,Promise 将会以一个代表被清除的 DownloadItems ID 的整数数组来 fulfilled。如果没有找到与查询参数匹配的项,数组将为空。如果调用失败,Promise 将会以一个错误消息被 rejected。
示例
清除最近一次下载
js
function onErased(ids) {
console.log(`Erased: ${ids}`);
}
function onError(error) {
console.log(`Error erasing item: ${error}`);
}
let erasing = browser.downloads.erase({
limit: 1,
orderBy: ["-startTime"],
});
erasing.then(onErased, onError);
清除所有
js
function onErased(ids) {
console.log(`Erased: ${ids}`);
}
function onError(error) {
console.log(`Error erasing item: ${error}`);
}
let erasing = browser.downloads.erase({});
erasing.then(onErased, onError);
扩展程序示例
浏览器兼容性
加载中…
注意:此 API 基于 Chromium 的 chrome.downloads API。