在html中
<input type="file" multiple="multiple" (change)="getFileSizeandName($event)"/>
在file.ts中
我有全局变量
imageStringBase64: Array<string>;
事件更改触发时和函数调用
getFileSizeandName(args) {
let files = args.target.files;
for (let i = 0; i < files.length; i++) {
let reader = new FileReader();
reader.onload = (function (f) {
return function(e) {
console.log(e.target.result);
this.imageStringBase64 = e.target.result;
}
})(files[i]);
reader.readAsDataURL(files[i]);
}
}
}
当我在控制台打印的stringBase64中使用conole.log(e.target.result)时 分配this.imageStringBase64 = e.target.result并产生意外结果, this.imageStringBase64 未定义。如何在匿名函数中使用global var?