downloads.getFileIcon()
的 **getFileIcon()
** 函数downloads
API 检索指定下载的图标。
对于新下载,在收到downloads.onCreated
事件后,即可使用文件图标。在下载过程中,此函数返回的图像可能与下载完成后返回的图像不同。
图标检索通过查询底层平台来完成。因此,返回的图标将取决于许多因素,包括下载状态、平台、已注册的文件类型和视觉主题。
这是一个返回Promise
的异步函数。
语法
js
let gettingIcon = browser.downloads.getFileIcon(
downloadId, // integer
options // optional object
)
参数
downloadId
-
表示下载 ID 的
整数
。 options
可选-
表示要检索的图标的首选项的选项
对象
。它可以采用以下属性size
可选-
表示图标大小的
整数
。返回的图标大小将是提供的 size 的平方(以像素为单位)。如果省略,则图标的默认大小为 32x32 像素。
返回值
一个Promise
。如果请求成功,则 promise 将以表示图标绝对 URL 的字符串的形式完成。如果请求失败,则 promise 将被拒绝并显示错误消息。
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
示例
此示例记录最近下载的图标 URL
js
function gotIcon(iconUrl) {
console.log(iconUrl);
}
function onError(error) {
console.log(`Error: ${error}`);
}
function getIcon(downloadItems) {
if (downloadItems.length > 0) {
latestDownloadId = downloadItems[0].id;
let gettingIcon = browser.downloads.getFileIcon(latestDownloadId);
gettingIcon.then(gotIcon, onError);
}
}
let searching = browser.downloads.search({
limit: 1,
orderBy: ["-startTime"],
});
searching.then(getIcon, onError);
扩展示例
注意:此 API 基于 Chromium 的chrome.downloads
API。