iview的upload组件 动态赋值default-file-list 不显示

我在某个操作赋值 (点击编辑 会出个一个弹窗 然后显示图片)
this.defaultList = [
{

  name:'a42bdcc1178e62b46',
  url:`${baseUrl}${params.row.v_icon}`,

}
]
界面并不显示图片
但是我在控制台打印this.$refs.upload

clipboard.png

可以看到它的的fileList 是有值的

但是我单独打印 console.log(this.$refs.upload.fileList) 就是空的

clipboard.png

回答:

setTimeout(() => {
    this.defaultList = this.picDefaulList;
    this.$nextTick(() => {
        this.uploadList = this.$refs.upload.fileList;
    });
}, 1000);

回答:

刚刚遇到一个同样的问题,找到一种解决方案,通过父组件向子组件的props传值,然后就可以显示了。

回答:

有人说可以直接去操作uploadList,default获取不到,比如这样

this.uploadList.push({
  name: ...,
  url: ...,
  showProgress: false,
  status: "finished"
});

回答:

动态复制完之后,需要nextTick的回调中取最新的数据

this.$nextTick(() => {
        // 这样打印出来就会有值了
        console.log(this.$refs.upload.fileList) 
    });

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注