uni.previewImage是uniapp提供的预览图片的方法
渲染轮播图区域
1.使用 v-for 指令,循环渲染如下的轮播图 UI 结构:
<!-- 轮播图区域 -->
<!-- 小圆点 / 自动轮播 / 轮播间隔时间 / 当前页轮播开始到结束耗时 / 无缝衔接轮播 -->
<swiper :indicator-dots="true" :autoplay="true" :interval="3000" :duration="1000" :circular="true">
<swiper-item v-for="(item, i) in goods_info.pics" :key="i">
<image :src="item.pics_big"></image>
</swiper-item>
</swiper>
2.美化轮播图的样式:
// 轮播图样式处理
swiper {
height: 330rpx;
//每一张轮播
.swiper-item,
image {
width: 100%;
height: 100%;
}
}
3.实现轮播图预览效果
- 为轮播图中的 image 图片绑定 click 事件处理函数:
<swiper-item v-for="(item, i) in goods_info.pics" :key="i">
<!-- 把当前点击的图片的索引,传递到 preview() 处理函数中 -->
<image :src="item.pics_big" @click="preview(i)"></image>
</swiper-item>
- 在 methods 中定义 preview 事件处理函数:
// 实现轮播图的预览效果
preview(i) {
// 调用 uni.previewImage() 方法预览图片
uni.previewImage({
// 预览时,默认显示图片的索引
current: i,
// 所有图片 url 路径的数组 //这里直接把图片列表的数组放入即可
urls: this.goods_info.pics.map(item => item.pics_big)
})
}
效果已经实现了: