element ui级联选择器数据处理

后端同事返回的级联选择器数据的children是childrens,而组件渲染只识别children,所以需要props自定义传入,代码如下

html 复制代码
<el-form-item label="应用页面:" prop="appId">
              <el-cascader
                :props="{ children: 'childrens' }"
                :options="options"
                v-model="formData.appId"
                clearable
                @change="handleChangecasca2"
              ></el-cascader>
            </el-form-item>

因为后端同事最后一层对象也返回了children,但是数据是空,这时候级联的最后一层就没法选择,所以需要将最后一层对象的children设置为undefine,这样子就可以选了

this.getTreeData(this.options); //传入数据处理

js 复制代码
	
    // 递归判断列表,把最后的children设为undefined
    getTreeData(data) {
      for (var i = 0; i < data.length; i++) {
        if (data[i].childrens.length < 1) {
          // children若为空数组,则将children设为undefined
          data[i].childrens = undefined;
        } else {
          // children若不为空数组,则继续 递归调用 本方法
          this.getTreeData(data[i].childrens);
        }
      }
      return data;
    },
相关推荐
油丶酸萝卜别吃14 小时前
高效处理数组差异:JS中新增、删除、交集的最优解(Set实现)
开发语言·前端·javascript
GISer_Jing14 小时前
前端动画技术全解析:从GIF到WebGPU
前端·ai·动画·webgl
HoneyMoose14 小时前
Npmp 安装时候提示警告: error (ERR_INVALID_THIS)
开发语言
LIO14 小时前
Vue3 + TS 企业级工程化项目全套实战(Vue3 + Vite + Pinia + VueRouter + Element Plus)
前端·vue.js
gskyi14 小时前
时间格式化神器:智能显示相对时间
开发语言·javascript·ecmascript
古城小栈14 小时前
Rust在当下AI领域的用武之地:从底层加速到上层应用全解析
开发语言·人工智能·rust
lsx20240614 小时前
SQLite Where 子句详解
开发语言
李昊哲小课14 小时前
安装 npm/pnpm/yarn 换国内镜像 统一目录管理全局包+缓存
前端·缓存·npm·pnpm·yarn
挖稀泥的工人14 小时前
AI 打字跟随优化
前端·javascript·vue.js
Ruihong14 小时前
你的 Vue 3 defineEmits(),VuReact 会编译成什么样的 React?
vue.js·react.js·面试