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 三级联动数据回显感谢大家的阅读

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

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

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

相关文章
element el-cascader动态编辑赋值后,不回显的解决方法(整理)
element el-cascader动态编辑赋值后,不回显的解决方法(整理)
|
UED
element el-cascader动态加载数据 (多级联动,落地方案)
最近需要用到element ui的这个插件做地区的四级联动,但是碰了一些问题: 官网的说明太泛泛然,不易看懂 网上的教程乱七八糟,代码一堆一堆的 看这篇就对了!!!
2452 0
element el-cascader动态加载数据 (多级联动,落地方案)
|
JavaScript 数据格式
vue里使用elementui的级联选择器el-cascader进行懒加载的怎么实现数据回显?
vue里使用elementui的级联选择器el-cascader进行懒加载的怎么实现数据回显?
1960 0
vue里使用elementui的级联选择器el-cascader进行懒加载的怎么实现数据回显?
|
测试技术
【sgLazyCascader】自定义组件:基于el-cascader的懒加载级联菜单,支持异步加载子级菜单
【sgLazyCascader】自定义组件:基于el-cascader的懒加载级联菜单,支持异步加载子级菜单
|
6月前
|
缓存 前端开发 JavaScript
前端性能优化:打造流畅的用户体验
前端性能优化:打造流畅的用户体验
|
数据格式
使用小技巧实现el-table组件的合并行功能,ElementUI和ElementPlus都适用
本文介绍了在ElementUI和ElementPlus中使用`el-table`组件实现合并行功能的技巧,包括多列合并和单列合并的方法,并提供了相应的示例代码和运行效果。
10131 46
使用小技巧实现el-table组件的合并行功能,ElementUI和ElementPlus都适用
|
JavaScript 前端开发
Element_文件上传&&多个文件上传
Element_文件上传&&多个文件上传
983 0
Vue3级联选择(Cascader)
这是一个可定制的级联选择器组件,支持多级下拉选项。主要属性包括:数据源、文本字段、值字段、后代字段、占位符文本、选择行为、间距、宽度、高度、禁用状态、清除功能、搜索功能及过滤函数等。组件可根据需求灵活配置,并支持动态更新与事件回调。在线预览和详细示例可见[这里](https://themusecatcher.github.io/vue-amazing-ui/guide/components/cascader.html)。
938 2
Vue3级联选择(Cascader)
【el-cascader-plus亲测有限】el-cascader级联选择器懒加载+多选功能回显失败解决方案
【el-cascader-plus亲测有限】el-cascader级联选择器懒加载+多选功能回显失败解决方案
1627 0
|
前端开发 JavaScript
【项目笔记】:elementui下拉框数据太多造成页面卡顿怎么解决?
针对前端下拉框数据过多造成页面卡顿,元芳你怎么看?
778 2