Open OneObject opened 6 years ago
<swiper loop v-model="pptIndex" :aspect-ratio="90/160" :show-dots="false" @on-index-change="onIndexChange"> <swiper-item class="swiper-demo-img" v-for="(item, index) in imgObjectList" :key="item.id"> <img :src="IMAGE_PATH + item.path"> <div class="s-index">{{index+1}} / {{imgObjectList.length}}</div> </swiper-item> </swiper>
当我动态的为imgObjectList中的最后添加一个新的对象时,swiper的顺序变化了。imgObjectList 元素的index 和 滑动元素的index不相同了。刷新页面后正常。能否提供一个重置swiper组件的方法
正常的初始化,index正常 为图片列表新增一个对象,就出现的index异常
有个rerender方法,请前往源码查看
swiper-item 创建时会 rerender 一次。没理解 index 不对应什么意思,loop 模式下最后一个会被移动到前面。
https://github.com/airyland/vux/blob/54199767513697079ff45ca5f5c9170ce36fffcf/src/components/swiper/swiper-item.vue#L8-L10
列表变化之后,最后一个移动到最前面,导致了顺序出现了问题。
当我动态的为imgObjectList中的最后添加一个新的对象时,swiper的顺序变化了。imgObjectList 元素的index 和 滑动元素的index不相同了。刷新页面后正常。能否提供一个重置swiper组件的方法