当前位置: 首页 > Web前端 > HTML

小程序自定义开关组件

时间:2023-04-03 00:35:50 HTML

如上图所示,小程序api中的开关组件只能自定义颜色,不能自定义宽高,于是开始自己写开关组件。自定义组件样式开关组件的样式大致如图所示。样式思路:未选中时为圆角按钮的矩形,以及半径为矩形[(矩形高度/2)-1]的圆。选中状态时,圆向右滚动,滚动距离为[矩形宽-矩形高-1],动画效果由transition属性给出,控制圆的left值。自定义组件概念从父组件传递以下值:height、width、选中时的背景bgColor、未选中时的背景unBgColor、选中状态值、rpx中的width和height。定义了一个组件方法,点击时触发执行,执行后要做的事情交给父组件处理,并传递一个状态值给父组件。考虑到真实情况下会发起http请求,请求成功时回调,失败时回调。在使用组件的时候,在写demo的时候发现一个问题:wxml中直接写入false或者true时,checked的值状态为true。只有当js中定义的数据值为false时,状态才变为false。具体原因不详。如果有人知道原因,请告诉我。!!!项目演示!!!附链接:wechatide://minicode/ZErlcKmG79Em在开发者工具中预览