【Vue】iview carousel 图片不显示问题解决
问题截图:
相关代码
<Carousel autoplay v-model="value2" v-if="uploadList!=''" loop>
<Carousel-Item v-for="(item,index) in uploadList" :key="index">
<div class="demo-carousel">
<img :src="item" style="height:241px;width:444px;" alt="" />
</div>
</Carousel-Item>
</Carousel>
简便的方法,给 carousel 加一个 v-if 指令,值与你控制 modal 的 booean 值绑定,这样 carousel 就会延迟初始化,达到计算 listwidth 不让其未 0 的效果
这个问题是宽度为 0 导致的。从源码中可以看出,宽度在页面初始化(mounted)的时候就已经计算了,this.handleResize(); 我是把这个组件抽出来了,然后改了它的源码,在 调用 updatePos 之前 执行一下 handleResize 就可以了