【发布时间】:2020-10-27 13:31:44
【问题描述】:
我有一个 Vue 组件,其中我有一个 img,我需要获取该图像的尺寸,最好是在显示图像之前(以适应容器的宽度或高度)。
this.img = new Image();
this.img.src = this.payload.src;
this.img.onload = () => {
let width = this.img.naturalWidth;
let height = this.img.naturalHeight;
}
该代码可能不起作用,图像 src 可以返回 401(尚不确定),我们使用代理并从服务器上的存储桶中获取该文件。比如 /api/getStorageResource?blob=
我能做什么?
有了链接,我可以通过 axios 获取图像并将其设置为元素,而不是 <img src=".." />
作为一个选项,我看到我可能可以拥有现在的元素 <img src="/api/getStorageResource?blob=" /> 和 getElementById 它并获取宽度和高度...不确定我的选项在这里。
【问题讨论】:
-
我不完全理解你的问题。您的问题是某些图像可能会返回 401 错误,因此您将无法获取尺寸,或者您正在寻找获取图像尺寸的方法?
标签: javascript html css vue.js asynchronous