<uni-swiper-dot :info="details.ImageArray.length == 1?[]:details.ImageArray" :current="bannerCurrent" field="content"
:dotsStyles="bannerDotStyles">
<swiper @change="bannerSwiterChange" autoplay class="swiper-box" :style="'height:'+swiperHeight">
<swiper-item v-for="(item,index) in details.ImageArray" :key="index">
<image :src="item" class="hander" mode="widthFix"></image>
</swiper-item>
<swiper-item :key="5">
<image src="https://img.eic.org.cn/img/3525e08bb7274d50ae4c42dca3ec18a2" class="hander" mode="widthFix">
</image>
</swiper-item>
</swiper>
</uni-swiper-dot>
<script>
export default {
data() {
return {
swiperHeight: '',
bannerDotStyles: {
bottom: 10,
selectedBackgroundColor: "#0d45ff",
backgroundColor: "#fff",
width: 12,
selectedBorder: '1px soliid #0d45ff'
},
bannerCurrent: 0,
};
},
onLoad(options) {
if (options.id) {
this.id = options.id;
}
this.recordAllPage(); //埋点
this.setSwiperHeight()
},
methods: {
bannerSwiterChange(e) {
this.bannerCurrent = e.detail.current;
console.log(e.detail.current)
this.setSwiperHeight()
},
setSwiperHeight() {
setTimeout(() => { // fixbug:不加setTimeout算出来的宽度会不准,极其坑
const query = uni.createSelectorQuery().in(this)
// const num = Math.ceil(this.data.picList.length / LINE_LENGTH)
query.selectAll('.hander').boundingClientRect()
query.exec((res) => {
console.log(res)
this.swiperHeight = res[0][this.bannerCurrent].height + 'px';
console.log(this.swiperHeight)
})
}, 1000);
}
}
}
</script>