微信小程序下拉框组件使用方法详解
网络编程 2021-07-04 15:50www.168986.cn编程入门
这篇文章主要为大家详细介绍了微信小程序下拉框组件的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了微信小程序下拉框组件的使用方法,供大家参考,具体内容如下
适用场景
1、省市三级联动
2、出生日期选择
3、性别选择
4、一般性的下拉选择等
一、省市三级联动使用
注意mode = region,以及value = “一维数组”
//.wxml <picker mode="region" bindchange="bindViewEvent" data-model="ponent" data-method="bindSelect" data-name="region" value="{{region}}" custom-item="{{customItem}}"> <view class="picker"> 当前选择{{region[0]}},{{region[1]}},{{region[2]}} </view> </picker>
二、出生日期选择
注意mode = date,以及value = “日期字符串”
<picker mode="date" value="{{date}}" start="2015-09-01" end="2017-09-01" bindchange="bindViewEvent" data-model="ponent" data-method="bindSelect" date-mode="date" data-name="date"> <view class="picker"> {{date}} </view> </picker>
三、性别选择
注意,不填mode默认为selector,range=”一维数组”,value=”当前选中索引”
<picker bindchange="bindViewEvent" data-model="ponent" data-method="bindSelect" data-name="index" value='{{index}}' range="{{gender}}"> <view class="label-right"> {{gender[index]}} </view> </picker>
以上都需要在.js里设置相关初始变量!
//.js var app = getApp(); data: { region:['河北','沧州','河间'], date:'2010-10-10', gender:['男','女'], index:0 }, bindViewEvent:function(e){ app.process(this,e); }
相关js类
//ponent.js const select = require('../ponent/select.js'); const upload = require('../ponent/upload.js'); class ponent{ constructor(, that) { this. = ; this.that = that; } //绑定下拉框选择事件 bindSelect(data){ let self = this; let mode = data.currentTarget.dataset.mode; let name = data.currentTarget.dataset.name; let picker = new select({ that: self.that, mode: mode, name: name }); picker.change(data.detail.value); } //点击事件,传递参数为e.currentTarget.dataset bindImageChoose(data){ //图片上传 this.uploader = new upload({ that: that, name: data.name, mode: data.mode, count: data.count || 9 }); this.uploader.choose(); } bindImageDel(data){ //图片上传 this.uploader = new upload({ that: that, name: data.name, mode: data.mode, count: data.count || 9 }); this.uploader.del(data.index); } } module.exports = ponent; //select.js / 下拉框对象 / class picker{ constructor(data){ this.that = data.that; this.name = data.name || 'date'; this.mode = data.mode || 'selector'; } show(name,data){ let view = {}; view[name] = data; this.that.setData(view); } change(data){ let self = this; self.show(self.name, data); } } module.exports = picker; //upload.js class picUploader { constructor(data) { this.that = data.that; this.name = data.name; this.mode = data.mode || 1; this.count = this.model == 1 ? 1 : data.count || 9; } / 选择图片 / choose() { const self = this; wx.chooseImage({ count: (self.count - self.that.data[self.name].length), sizeType: ['original', 'pressed'], sourceType: ['album', 'camera'], suess: function (res) { var tempFilePaths = res.tempFilePaths; self.append(tempFilePaths); } }) } / 显示图片 / show() { let self = this; let view = {}; view[self.name] = self.that.data[self.name]; self.that.setData(view); } / 追加图片 / append(data) { const self = this; for (let i = 0; i < data.length; i++) { self.that.data[self.name].push(data[i]); } self.show(); } / 删除图片 / del(index) { let self = this; self.that.data[self.name].splice(index, 1); self.show(); } } module.exports = picUploader;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
上一篇:6行代码实现微信小程序页面返回顶部效果
下一篇:微信小程序实现星级评价效果
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指