项目场景:

照片墙点名需要用到大量的照片


问题描述:

懒加载失效,只会显示当前窗口的 滑动后图片不加载。或者图片全加载


原因分析:

组件找到了最近一个overflow值为auto或scroll的元素,并且绑定了scroll-container设置滚动容器,分析 组件渲染  和 css 出错了

<div class="call_list"  ref="personDom">
    <div v-for="(item, index) in arr" :key="item.id">
        <el-image
        :src="item.userPhoto"
        fit="cover" 
        lazy
        :scroll-container="scrollContainer"
        ></el-image>
    </div>
</div>

-----
mounted() {
    this.scrollContainer = this.$refs.personDom.warp
}

解决方案:

将组件v-for的:key的值由 index 换成唯一id值

将css中:

overflow-x: hidden;

overflow-y: auto;

换成

overflow: auto

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐