下面的函数声明一个空数组,其中的内容只能是ElUploadInternalRawFile类型。 foreach迭代一个数组,并一次将一个ElUploadInternalRawFile类型的对象注入到所述数组中。
但是,编译器现在认为const file1
可以是undefined
或上述类型。但是,..因为ItemModule.saveItemImages期望file1是ElUploadInternalRawFile,所以它抱怨并说它不能接受file1,因为它可能是未定义的。
我觉得我在这里处于疯狂的打字稿逻辑循环中..我怎样才能将文件声明为特定类型的数组或纯旧的空数组..?
private async handleImageSubmit(uniqueItemName: string) {
let files: [ElUploadInternalRawFile?] = [];
this.getUploadFiles().forEach((file: ElUploadInternalFileDetail) => {
files.unshift(file.raw)
});
if(files.length > 0){
const file1 = files[0];
await ItemModule.saveItemImages(uniqueItemName, file1 );
}
}