级联效果在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下拉菜单的组件,这个到底该怎么办。

相关推荐
喵叔哟16 分钟前
重构代码之取消临时字段
java·前端·重构
还是大剑师兰特1 小时前
D3的竞品有哪些,D3的优势,D3和echarts的对比
前端·javascript·echarts
王解1 小时前
【深度解析】CSS工程化全攻略(1)
前端·css
一只小白菜~1 小时前
web浏览器环境下使用window.open()打开PDF文件不是预览,而是下载文件?
前端·javascript·pdf·windowopen预览pdf
方才coding1 小时前
1小时构建Vue3知识体系之vue的生命周期函数
前端·javascript·vue.js
阿征学IT1 小时前
vue过滤器初步使用
前端·javascript·vue.js
王哲晓1 小时前
第四十五章 Vue之Vuex模块化创建(module)
前端·javascript·vue.js
丶21361 小时前
【WEB】深入理解 CORS(跨域资源共享):原理、配置与常见问题
前端·架构·web
发现你走远了1 小时前
『VUE』25. 组件事件与v-model(详细图文注释)
前端·javascript·vue.js
Mr.咕咕1 小时前
Django 搭建数据管理web——商品管理
前端·python·django