1、需要引入vant-picker,需要定制一个数组,包含三级即[一级,一级内容,子类[二级,二级内容,子类[三级,三级内容]]],如下图
2、在vant-picker的onChange事件中,对上面数组进行分级控制。
3、难点,需要把数组按三级拆分出来,放到picker的三列中,控制不好就会各种报错。
1、json,引入vant-picker
2、wxml
绑定change confirm 2个必须事件
3、js文件
3.1 定义选项内容,需要分成三级
3.2 data 中实现picker3列
3.3 onChange 事件实现
3.4 常见问题
3.4.1 最后一级斗激如果没有内容,vant-picker会报错,所以需要做一个空判断,如果为空,赋值一个常量
3.4.2 是使用value,还是选择使用自己定义的常量,需要调试伍神看。value值已经获取到了三列数据,但是容易出错。我最后还是选择使用原来定义常量proSelectList。
4.1 三级数据齐全的选择
4.2 第三级如果为空,第三列使用默认数据
将 app.json 中的 "style": "v2" 去除,小程序的新版基础组件强行加上了许多样式,难以覆盖,不侍租关闭将造成部分组件样式混乱。
开发者工具创建的项目,miniprogramRoot 默认为 miniprogram,package.json 在其外部,npm 构建无法正常工作。需要手动在 project.config.json 内添加如下配置,使开发者工具可以正确索引到 npm 依赖的位置。
打开微信开发者工具,点击 工具 ->构建 npm ,并勾选 使用 npm 模块 选项,构建完成后,
到 全局配置 app.json 中注册引入组件,详见 快速上手 。
支持default、primary、info、warning、danger五种类型,默认为default。 格式:
通过plain属陆兄性将按钮设置为朴素按钮
设置hairline属性可以开启 0.5px 边框,基于伪类实现。
通过disabled属性来禁用按钮,此时按钮的bind:click事件不会触发。
通过loading属性来设置加载按钮 loading-type="spinner" loading-text="加载中..."
通过icon属性设置按钮图标,支持 Icon 组件里的所有图标,也可以传入图标 URL。
label 输入框左侧文本
type 可设置为任意原生类型, 如 number idcard textarea digit
readonly 是否只读
custom-style 自定义样式
autosize 是否自适应内容高度,只对 textarea 有效,可传入对象,如 { maxHeight: 100, minHeight: 50 },单位为px
show :是否显示
onClose 点击其他位置,关闭d出层
position 可以设置为top、bottom、left、right。
Picker 选择器 需要配合d出层使用
<van-picker columns="{{ columns }}" bind:change="onChange" />
columns 对象数组,配置每一列显示的数据
onChange(e) 有默认参数 e
value-key 选项对象中,文字对应的 key 通常用于对象数组
show-toolbar 是否显示顶部栏
defaultIndex 初始选老悉兆中项的索引,默认为 0 不是双向绑定 需要自己改变defaultIndex 的值 需要渲染两次
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)