您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

怎样实现微信小程序的自定义多选事件

2024/3/29 21:01:34发布78次查看
这次给大家带来怎样实现微信小程序的自定义多选事件,实现微信小程序的自定义多选事件注意事项有哪些,下面就是实战案例,一起来看一下。z
要实现下图的效果(自定义多选单选),大多数公司项目的多选框都是自己设计的,所以用原生标签或者组件是不可行的,最简单的是自己绑定事件,然后切换选择和未选择的图片。而小程序和vue一样是没法操作dom的,所以要利用数组的下标和自定义属性来进行三元判断。
直接上代码:
wxml:
<view class="sel-box">    /**用wx:for来进行列表渲染**/   <view wx:for="{{repcontent}}" class="multi-selection">    <text>{{item.message}}</text>    /**利用数组的下标index来进行判断是哪个的事件**/    <image src="{{selectindex[index].sureid? hasselect : noselect}}" class="multi-img" data-selectindex="{{index}}" bindtap="selectrep" />   </view>  </view>
js:
page({  /**   * 页面的初始数据   */  data: {   noselect: 'https://xxxxx/ic_report_nor@2x.png',   hasselect: 'https://xxxxx/ic_check_ele@2x.png',   repcontent: [{ message: '广告内容' }, { message: '不友善内容' }, { message: '垃圾内容' }, { message: '违法违规内容' }, { message: '其他' }],   selectindex: [    { sureid: false },    { sureid: false },    { sureid: false },    { sureid: false },    { sureid: false },   ],  },  /**   * 生命周期函数--监听页面加载   */  onload: function (options) {    },  selectrep:function(e){   let index = e.currenttarget.dataset.selectindex; //当前点击元素的自定义数据,这个很关键   let selectindex = this.data.selectindex;  //取到data里的selectindex   selectindex[index].sureid = !selectindex[index].sureid;  //点击就赋相反的值   this.setdata({    selectindex: selectindex  //将已改变属性的json数组更新   })  } })
currenttarget::事件绑定的当前组件。
dataset:在组件中可以定义数据,这些数据将会通过事件传递给 service。 书写方式: 以data-开头,多个单词由连字符-链接,不能有大写(大写会自动转成小写)如data-element-type,最终在 event.currenttarget.dataset 中会将连字符转成驼峰elementtype。
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
应该如何搭建webpack+react开发环境
node.js buffer使用详解
以上就是怎样实现微信小程序的自定义多选事件的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product