级联效果在Uview2.0中的实现

级联效果在Uview2.0中的实现。

假设需要一个【省,市,区】的三级联动,你会怎么用uview2.0做?

首先,回顾其他组件库,基本上都让你传递一个树状数组,然后级联选择啥的都不需要操心。一般这类组件都叫做cascader,但是uview2.0并未有cascader组件,你只能选择使用picker。

那么picker咋用呢?

首先,注意这俩属性,分别代表每列数据&每列选中的下标,后面回显会用到。

其次,在change函数,会在每次滑动选项后触发。

通过解构出的columIndex可以判断是第几列被滑动了,而index则是代表该列目前被选中的下标是几。

所以咱们理清逻辑

  • 当第一列滑动的时候,咱们需要决定第二列、第三列的数据到底显示什么
  • 当第2列滑动的时候,咱们需要决定第3列的数据到底显示什么
scss 复制代码
picker.setColumnValues(1, children1);
picker.setColumnValues(2, children2)

//这里的children1,children2都是咱们自行生成的数组,形如【'a','b','c'】

最后,咱们选择完成后触发confirm,此时务必记得改变columns和defaultIndex的值,不然下次打开仍是初始值,没有回显。

最后的最后,我还有个困惑,uview2.0并没有dropdown下拉菜单的组件,这个到底该怎么办。

相关推荐
冬奇Lab14 分钟前
每日一个开源项目(第143篇):page-agent - 纯 JS 的网页 GUI Agent,无需截图、无需插件、无需后端
前端·人工智能·agent
IT_陈寒5 小时前
React的这个渲染问题连官方文档都没说清楚
前端·人工智能·后端
追逐时光者6 小时前
别再满网找零散工具了,腾讯 QQ 浏览器这个“帮小忙”工具箱真能省时间
前端·后端
Asmewill8 小时前
grep&curl命令学习笔记
前端
spmcor8 小时前
身份证读卡“无感登录”方案实践:从手动点击到自动检测
uni-app
stringwu8 小时前
Flutter 开发必备:MVI 架构的高效实现指南
前端·flutter
用户2136610035729 小时前
Vue2组件化开发与父子通信
前端·vue.js
Momo__10 小时前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript
用户21366100357210 小时前
Vue2事件系统与指令进阶
前端·vue.js
labixiong10 小时前
实现一个能跑的迷你版Promise(一)
前端·javascript·面试