cascader 三级联动数据回显

简介: cascader 三级联动数据回显

cascader 三级联动数据回显 el-cascader 级联选择器详解

在我们使用cascader 写三级联动的时候 往往会遇到需要回显 区域 这里我们以 element 示例

  • 基本属性

v-model:绑定值

props:参数指定绑定数据的格式

clearable:清空选项

filterable:搜索功能

show-all-levels:示最后一级

checkStrictly:选中不是最后一级的节点

lazy: 动态下拉数据

以上是我们常用的几个属性想要了解更多可去官网

  • 代码实现三级联动 以下我们简单的看三种场景的使用

1.使用props 指定绑定数据的格式

    <el-cascader v-model="value" :options="myOptions" :props="{label:'name',value:'id',children:'children' }"></el-cascader>
      myOptions: [{
        id: '1',
        name: '北京',
        children: [{
          id: '2',
          name: '市辖区',
        },
        {
          id: '3',
          name: '海淀区',
        }],
      }],

2.checkStrictly 开启后 我们想选中不是最后一级的节点 expandTrigger修改为hover

    <el-cascader v-model="value" :options="defaultOptions" :props="{ checkStrictly: 'true',expandTrigger: 'hover' }"></el-cascader>

3.slot-scope=“{ data }” 自定义 渲染的内容和样式更改

 自定义节点内容
    <el-cascader v-model="value" :options="defaultOptions">
      <template slot-scope="{ data }">
        <span style="fonst-size:20px">{{ data.label }}</span>
      </template>
    </el-cascader>

4.三级联动数据回显 以及动态下拉数据开启 lazy属性

vue2.0

   <el-cascader :props="Props"></el-cascader>
   data:{
      Props: {
        lazy: true,
        lazyLoad(node, resolve) {
          // 通过resolve将子节点数据返回
          let nodes = [{
              label: '北京',
              value: 1
            }];
            this.value = [31, 3101, 310101, 310101002] // 这里是数据双向绑定
          resolve(nodes);
        }
      }
}

vue3.0

亿点小知识:我们可以通过level (下拉级别)判断下拉是否有数据进行处理

const propsValue = ref();
 propsValue.value = {
      lazy: true,
      label: "name",
      value: "code",
      checkStrictly: true,
     async lazyLoad(node: any, resolve) {
          const {
            level,
            data: { code }
          } = node;
          const { data } = await getCode(code);//getCode 从后端获取区域数据
          if (level == 3) {
            data.forEach(item => {
              // 当点击最后一级的时候 label 后面不会转圈圈 并把相关值赋值到选择器上
              item.leaf = level >= 1;
            });
          }
          resolve(data);
      }

以上就是前端cascader 三级联动数据回显感谢大家的阅读

如碰到其他的问题 可以私下我 一起探讨学习

如果对你有所帮助还请 点赞 收藏谢谢~!

关注收藏博客 作者会持续更新…

相关文章
|
1月前
|
JavaScript
layui二级联动
layui二级联动
|
8月前
08jqGrid - 自定义按钮
08jqGrid - 自定义按钮
35 0
|
8月前
|
JavaScript 前端开发 Java
19jqGrid - 多选
19jqGrid - 多选
25 0
|
1月前
|
移动开发 JavaScript 小程序
uView Textarea 文本域
uView Textarea 文本域
48 0
|
1月前
|
JavaScript
uniapp用picker实现自定义三级联动(children)
uniapp用picker实现自定义三级联动(children)
79 0
|
1月前
|
JavaScript
原生js实现省市区三级联动
原生js实现省市区三级联动
28 0
|
11月前
|
JavaScript
简单的二级联动效果
简单的二级联动效果
51 0
|
存储 数据库
easyui-form表单提交combobox
easyui-form表单提交combobox
59 0
|
前端开发
你对layui的弹出层表单进行表单验证了解多少呢?
我们在项目中使用**layui**做前端的时候,就少不了表单**form**,但也有时候我们会使用**layui**的弹出层`layer.open`,来做一个弹出层表单,该弹出层有自己的**btn**(确定,取消按钮等等),那么如何对弹出层的表单做一个表单验证呢?
468 1
你对layui的弹出层表单进行表单验证了解多少呢?
|
JavaScript 前端开发 Java
javascript原生实现二级联动下拉菜单
JS原生实现二级联动菜单(市/区县) 🍅 Java学习路线:搬砖工的Java学习路线 🍅 作者:程序员小王 🍅 程序员小王的博客:https://www.wolai.com/wnaghengjie/ahNwvAUPG2Hb1Sy7Z8waaF 🍅 扫描主页左侧二维码,加我微信 一起学习、一起进步 🍅 欢迎点赞 👍 收藏 ⭐留言 📝
347 0
javascript原生实现二级联动下拉菜单