超简单的微信小程序轮播图
作者:大灰狼吃小白兔 时间:2024-04-25 10:36:05
Tips:微信小程序可以在HbuilderX用HTML标签(如Ddiv、span等)写前端代码,也可以用微信小程序语法写(view、swiper标签),然后npm run dev编译后,在微信开发者工具里面导入该项目,就可以调试项目,查看效果。
效果图:
微信小程序实现轮播图,本例是在*.wpy页面开发(该页面的temlate内容对应小程序的wxml,style样式对应小程序的wxss,script对应小程序的js文件,config对应小程序的json文件)
<style type="less" scoped="scoped">
.swiper image {
width: 100%;
height: auto;
}
.swiper-image {
height: 100%;
width: 100%;
}
.slide-image {
height: 100%;
width: 100%;
display: block;
}
</style>
<template>
<view class="swiper">
<swiper indicator-dots="{{indicatorDots}}" vertical="{{vertical}}" autoplay="{{autoplay}}" duration="{{duration}}" interval="{{interval}}" indicator-active-color="#007aff" bindchange="bindchange" circular="{{circular}}"
style="height:{{imgheights[current]}}rpx;">
<block wx:for="{{GoodsDatas.imgshow}}" wx:for-key="{{index}}" wx:for-item="image">
<swiper-item>
<image src="{{image.img}}" data-id="{{index}}" class="slide-image" mode="widthFix" bindload="imageLoad" />
</swiper-item>
</block>
</swiper>
</view>
</template>
<script>
import wepy from '@wepy/core'
wepy.page({
data: {
circular: true,
//是否显示画板指示点,根据图片数量自动生成多少个圆点
indicatorDots: true,
//选中点的颜色
//是否竖直
vertical: false,
//是否自动切换
autoplay: true,
//自动切换的间隔
interval: 3000,
//滑动动画时长毫秒
duration: 1000,
//所有图片的高度
imgheights: [],
//图片宽度
imgwidth: 320,
//默认
current: 0
},
imageLoad: function(e) { //获取图片真实宽度
var imgwidth = e.detail.width,
imgheight = e.detail.height,
//宽高比
ratio = imgwidth / imgheight;
console.log(imgwidth, imgheight)
//计算的高度值
var viewHeight = 750 / ratio;
var imgheight = viewHeight;
var imgheights = this.data.imgheights;
//把每一张图片的对应的高度记录到数组里
imgheights[e.target.dataset.id] = imgheight;
this.setData({
imgheights: imgheights
})
},
bindchange: function(e) {
// console.log(e.detail.current)
this.setData({
current: e.detail.current
})
}
})
</script>
将代码粘过去之后,只需要修改循环对象为图片数据就可以了。
来源:https://blog.csdn.net/weixin_44268473/article/details/96143558
标签:微信小程序,轮播图
0
投稿
猜你喜欢
vue el-table中使用el-select选中后无效的解决
2024-04-26 17:37:54
从MySQL 5.5发布看开源数据库新模式
2010-01-03 19:54:00
Django celery实现异步任务操作,并在后台运行(守护进程)
2021-11-12 16:26:21
python for循环remove同一个list过程解析
2023-03-20 22:07:48
Spring Boot如何解决Mysql断连问题
2024-01-14 23:52:42
python利用os模块编写文件复制功能——copy()函数用法
2023-01-20 16:11:56
基于K.image_data_format() == 'channels_first' 的理解
2022-08-01 08:12:45
Pyqt QImage 与 np array 转换方法
2022-01-03 01:18:53
Array.prototype.concat不是通用方法反驳[译]
2024-05-25 15:19:13
浅谈python输出列表元素的所有排列形式
2023-02-10 11:09:39
Python实现智慧校园自动评教全新版
2023-02-17 05:04:41
Python之re操作方法(详解)
2022-05-15 18:38:15
SQL函数将某个字段合并在一起的操作
2024-01-23 10:11:07
MySQL查询性能优化七种方式索引潜水
2024-01-20 01:11:35
Python实现的自定义多线程多进程类示例
2023-11-16 08:52:15
python turtle 绘制太极图的实例
2022-12-31 13:15:12
Python 解决相对路径问题:"No such file or directory"
2022-03-16 21:45:05
server application error--IIS故障
2009-06-11 12:50:00
Pytorch之parameters的使用
2022-05-22 21:06:01
用60行代码实现Python自动抢微信红包
2022-06-14 04:25:04