我有多种格式,我循环(使用 ngFor)来创建新组件。每个组件都有通过构造函数(new FileUploader())实现的 ng2-file-upload。
但是,如果我添加一个新文件并显示它,它也会添加/显示在其他组件的上传器上,这不应该是这种情况。
错过了什么?
我有多种格式,我循环(使用 ngFor)来创建新组件。每个组件都有通过构造函数(new FileUploader())实现的 ng2-file-upload。
但是,如果我添加一个新文件并显示它,它也会添加/显示在其他组件的上传器上,这不应该是这种情况。
错过了什么?
好的,我将代表从 Angular 聊天组中帮助我的人回答这个问题。(非常感谢!)
问题似乎是,虽然提供了两个不同的空数组
<upload
*ngFor = "let format of formats"
[images] = "images ? images : []"
[format] = format>
</upload>
甚至更好地看到:
<upload
[images] = "[]"
[format] = "'A'">
</upload>
<upload
[images] = "[]"
[format] = "'B'">
</upload>
angular 只是引用第二个空数组,而不是创建一个新数组。也许我缺乏经验,但这根本不直观。
解决方案是,给一个空数组,里面有不同的空数组......
<upload
*ngFor = "let format of formats; let i = index;"
[images] = "images[i]"
[format] = format>
</upload>
阿斯达斯
export class AppComponent {
...
images = [[],[]];
...
}