我正在使用 firebase 存储来存储一些图像,但是,当我想将 元素的源设置为相应的 URL 时,它只适用于某些图像。这是我正在尝试实现的功能:
function setImgUrl (element, imgPath) {
getDownloadURL(refStorage(storage, imgPath))
.then((url) => {
element.src = url;
})
}
我通过调试器发现元素和图像 url 都已正确传递给 .then(),但是当它尝试设置源时它不起作用。我已经尝试使用 element.src = url 和 element.setAttribute('src', url),但结果是相同的。即使当我重新加载页面时,它不起作用的图像似乎是随机的。
尝试向图像添加随机字符串,以强制其重新加载
const randomString = Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15);
element.src = url + `?v=${randomString}`;