javascript - Arraybuffer 无法输入字符串,Angular。我正在尝试在页面上显示上传的图片
问题描述
我使用了一个截图来显示用户选择的图像。代码有效,但在编辑器上我在下面显示的行中收到错误。我知道一旦我停止开发服务器并再次运行它,它就不会再编译了,这发生了。
srcFotos: Array<string>;
onFileSelect(event, index) {
if (event.target.files && event.target.files[0]) {
const file = event.target.files[0];
const reader = new FileReader();
reader.onload = e => {
alert(reader.result);
this.srcFotos[index] = reader.result; //Arraybuffer is not assinable to type string
};
reader.readAsDataURL(file);
}
}
在模板上
<img [src]="srcFotos[1]" class="img-fluid">
就像我说的代码按预期工作一样,我选择了图像,尽管出现错误,它仍然出现在页面上。
解决方案
您可以强制编译器将其视为带有 as 的字符串
this.srcFotos[index] = reader.result as string;
推荐阅读
- java - Java 递归回溯
- rust - 如何删除弱
如果无法升级到强引用,则 BinaryHeap 的价值? - c - 使 else if 语句起作用的问题
- java - 使用 Android Volley 在 laravel Passport 中创建用户
- mysql - 在mysql错误1064中创建触发器时出现问题?
- r - plotly中热图的透明度
- javascript - 在 es6 中等待而不需要响应
- lua - 如何获得2个物体之间的距离?(LUA)
- javascript - 如何使用 Dropbox API 将多个文件传输到任何 Dropbox 帐户?
- .net - .NET 托管模块中标头在创建程序集中的作用