angular 4 FileReader onloadend在IE11上未被调用
我正在尝试从excel文件中读取数据。以下代码w在IE11上停止工作,我不知道为什么?当我放置控制台日志时,我看到onloadend没有被触发。请告诉我解决这个问题的方法angular 4 FileReader onloadend在IE11上未被调用,angular,internet-explorer-11,filereader,Angular,Internet Explorer 11,Filereader,我正在尝试从excel文件中读取数据。以下代码w在IE11上停止工作,我不知道为什么?当我放置控制台日志时,我看到onloadend没有被触发。请告诉我解决这个问题的方法 private myReader: FileReader = new FileReader(); changeListener($event): void { readThis($event.target); } readThis(inputValue: any): void { const file:
private myReader: FileReader = new FileReader();
changeListener($event): void {
readThis($event.target);
}
readThis(inputValue: any): void {
const file: File = inputValue.files[0];
public test: String[] = [];
if (fileType === 'xlsx') {
console.log(this.myReader);
this.myReader.onloadend = (e) => {
/* read workbook */
const bstr: string = this.myReader.result;
const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });
/* grab first sheet */
const wsname: string = wb.SheetNames[0];
const ws: XLSX.WorkSheet = wb.Sheets[wsname];
this.data = XLSX.utils.sheet_to_json(ws, { header: 1 });
this.data.forEach(eachline => {
if (eachline[0] !== undefined) {
test.push(eachline[0]) ;
}
}
});
};
this.myReader.readAsBinaryString(file);
}
}
这就是在IE上使用readAsBinaryString的问题。我使用下面的链接修复了使用readAsArrayBuffer的问题。您是否尝试过使用
onload
而不是onload
?