位置: IT常识 - 正文

完美解决el-cascader回显失败问题(完美解决索尼电视arc无声音)

编辑:rootadmin
完美解决el-cascader回显失败问题 项目场景:

推荐整理分享完美解决el-cascader回显失败问题(完美解决索尼电视arc无声音),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:完美解决怠速抖动加油就平稳,完美解决win10间歇性掉线,完美解决显卡利用率低,完美解决显卡利用率低,完美解决win10共享打印机,完美解决win10共享打印机,完美解决win10共享打印机,完美解决usb电涌15秒后关机,内容如对您有帮助,希望把文章链接给更多的朋友!

项目场景:接手了一些老项目,需要做一些日志相关的操作,从后台日志跳转到相应页面要带上原来的请求参数,涉及到一个回显问题

问题描述

Element-UI的 <el-cascader /> 这个组件,赋值之后它不会回显!而且后端返回的值只有最后一级的id,可是一个劲看文档、找资料浪费大半天,所以总结了一个比较完美的办法

原因分析:

value 属性才是回显的关键,只有绑定了value属性才会让 <el-cascader /> 回显(单选情况下是一维数组、多选是二维数组),而且数组中的值一定是最后一级的id加上它父级的id组成

在这里放一下模拟的数据

depart_check: [],options: [{ value: 1, label: '东南', children: [ { value: 11, label: '上海', children: [{ value: 111, label: '黄浦区' }, { value: 112, label: '静安区' }, { value: 113, label: '虹口区' }, { value: 114, label: '长宁区' }] }, { value: 12, label: '江苏', }, { value: 13, label: '浙江', } ]}, { value: 2, label: '西北', children: [{ value: 21, label: '陕西', }, { value: 22, label: '新疆维吾尔族自治区', }]}]解决方案:

由于后端返回来的只有最后一级的id,所以我们需要写一个递归来拿到最后一级id和它父级id的数组 废话不多说直接上代码

/** @param list 数据列表* @param id 后端返回的id**/getParentsById(list, id) { for (let i in list) { if (list[i].value == id) { //查询到就返回该数组对象的value return [list[i].value] } if (list[i].children) { let node = this.getParentsById(list[i].children, id) if (node !== undefined) { //查询到把父节把父节点加到数组前面 node.unshift(list[i].value) return node } } }},完美解决el-cascader回显失败问题(完美解决索尼电视arc无声音)

方法有了之后就开始解决问题

一、多选赋值回显

因为多选的时候绑定的value是个二维数组 比如随便选俩,change事件拿到的值就是[[1,11,111], [1,12] ]

// 选择单位 handlechangedepatt(v) { console.log(v) this.depart_check = v },

因为后端只会返回来111、12两个值还是字符串格式"111,12",所以处理开始

let _depart_check = data.depart_id ? data.depart_id.split(",").map(i => Number(i)) : []let _arr = []// 使用上面写的方法 getParentsById 找出父级id并组合_depart_check && _depart_check.map(i => _arr.push(this.getParentsById(this.options, i)))console.log("_arr: ",_arr)this.depart_check = _arr

控制台打印拿到的_arr,完美和change事件里拿到的值是一个格式,这样回显就完成了

这里有一个小问题就是,拿到的id可能很多个,getParentsById方法只能一个一个找父级id,所以需要依次获取

二、单选赋值回显

方法和多选类似,因为单选change选中的值是一位数组,比如:[ 1,11,111 ]所以当拿到后端id之后不需要太多处理,只需要根据id和数据拿到一个一维数组的数据就行了,就不多解释了

let _depart_check = data.depart_id || ""let _arr = []_arr = this.getParentsById(this.options, _depart_check )this.depart_check = _arr总结

以上就是el-cascader回显失败的解决办法,可能有些小地方不够严谨,但是大问题得到了解决。

感谢

getParentsById方法有参考 爱吃蛋炒饭加蛋 大哥的帖子 js递归查询id所对应的节点,查询该节点的父节点,查询该节点的所有子节点 新定义定义一个 _arr是因为直接map赋值是不生效的,这里有参考 i_am_a_div_日积月累_ 大哥的帖子 el-cascader回显失败;el-cascader回显不出来

本文链接地址:https://www.jiuchutong.com/zhishi/283259.html 转载请保留说明!

上一篇:Win10/Win7如何彻底关闭系统进程 Win10/Win7关闭系统进程图文步骤(win7怎么删除windows.old)

下一篇:windows7旗舰版系统查看CPU处理器的方法(windows7旗舰版最新版本)

  • 游戏中前期防御塔机制时间范围(游戏中前期防御)(游戏中前期防御塔机制时间范围)

    游戏中前期防御塔机制时间范围(游戏中前期防御)(游戏中前期防御塔机制时间范围)

  • 荣耀手环怎么调时间(荣耀手环怎么调声音)

    荣耀手环怎么调时间(荣耀手环怎么调声音)

  • nova7和荣耀30对比(nova7手机和荣耀30)

    nova7和荣耀30对比(nova7手机和荣耀30)

  • 快手直播规则(快手直播规则及玩法)

    快手直播规则(快手直播规则及玩法)

  • 秘乐开通会员能取消吗(秘乐多少会员)

    秘乐开通会员能取消吗(秘乐多少会员)

  • 贴吧怎么关闭地址显示(贴吧怎么关闭地区显示)

    贴吧怎么关闭地址显示(贴吧怎么关闭地区显示)

  • 拼多多揽件超时12单怎么办(拼多多揽件超时24小时怎么处理)

    拼多多揽件超时12单怎么办(拼多多揽件超时24小时怎么处理)

  • 朋友圈文字为什么不能全部显示(朋友圈文字为什么会折叠起来)

    朋友圈文字为什么不能全部显示(朋友圈文字为什么会折叠起来)

  • airpods2丢了怎么查找(airpods2丢了怎么锁)

    airpods2丢了怎么查找(airpods2丢了怎么锁)

  • 华为没有耳机孔怎么办(华为没有耳机孔的手机型号)

    华为没有耳机孔怎么办(华为没有耳机孔的手机型号)

  • cad线加粗快捷键(cad线加粗命令键)

    cad线加粗快捷键(cad线加粗命令键)

  • wps灯不亮什么意思(wps的灯不亮)

    wps灯不亮什么意思(wps的灯不亮)

  • ppt中有不可读取的内容,打不开怎么办(ppt中有不可读取的文件)

    ppt中有不可读取的内容,打不开怎么办(ppt中有不可读取的文件)

  • 频繁开关机对电脑有什么影响(频繁开关机对电脑损害有多大)

    频繁开关机对电脑有什么影响(频繁开关机对电脑损害有多大)

  • 华为还原所有设置是什么意思(华为还原所有设置照片还有吗)

    华为还原所有设置是什么意思(华为还原所有设置照片还有吗)

  • iphone11香港上市时间(苹果手机11系列香港价格)

    iphone11香港上市时间(苹果手机11系列香港价格)

  • 美版a1661是什么版本(美版a1662是什么版本)

    美版a1661是什么版本(美版a1662是什么版本)

  • 扫码收款怎么联系对方(扫码收款怎么联系到扫码微信)

    扫码收款怎么联系对方(扫码收款怎么联系到扫码微信)

  • 苹果手表如何独立打电话(苹果手表如何独立使用)

    苹果手表如何独立打电话(苹果手表如何独立使用)

  • 为什么blued发送信息不过去(blued发送不了消息)

    为什么blued发送信息不过去(blued发送不了消息)

  • 荣耀20怎么进后台(华为荣耀20后退键在哪里)

    荣耀20怎么进后台(华为荣耀20后退键在哪里)

  • 一加7p防水吗(一加7到底防不防水)

    一加7p防水吗(一加7到底防不防水)

  • 苹果xs max怎么关闭最近使用程序(苹果xsmax怎么关机和开机)

    苹果xs max怎么关闭最近使用程序(苹果xsmax怎么关机和开机)

  • 华为nova系列主打什么方面(华为nova 7 pro)

    华为nova系列主打什么方面(华为nova 7 pro)

  • win10应用视图首先列出桌面中常用软件(win10应用图标怎么调出来)

    win10应用视图首先列出桌面中常用软件(win10应用图标怎么调出来)

  • 电脑如何进入BIOS 设置U盘启动(电脑如何进入bios设置)

    电脑如何进入BIOS 设置U盘启动(电脑如何进入bios设置)

  • win10下载软件被阻止无法安装怎么办(win10下载软件被阻止安装怎么办)

    win10下载软件被阻止无法安装怎么办(win10下载软件被阻止安装怎么办)

  • 应付职工薪酬纳税调整
  • 外购产品视同自产产品办理免抵退税的条件?
  • 桥闸通行费怎么做账务处理
  • 销售固定资产清单怎么做
  • 事业单位的会计制度是什么
  • 暂估入库必须次日入库吗
  • 普通合伙企业要交什么税
  • 公司新售楼总部房产税怎样算?
  • 地税局开票需要什么资料
  • 公司的公益性捐款合法吗
  • 借给其他公司借款会计分录
  • 火车票飞机票进项税额怎么抵扣
  • 短期借款利息的处理
  • 职工领取企业年金税收优惠
  • 捐赠支出税前扣除票据
  • 上年度第四季度总结
  • 前端获取当前地址
  • php函数返回值类型
  • PHP:xml_parse_into_struct()的用法_XML解析器函数
  • 解决思路怎么写
  • 苹果手机清理内存怎么清理微信内存
  • php中的require
  • phpunicode
  • php中session使用
  • 成本法转为权益法例题
  • html怎么引入图片
  • 存货的盘亏损毁和报废
  • 待安置期间生活补助费多少钱
  • 缴纳以前年度房产税会计分录
  • 马萨诸塞 下架
  • php路由教程
  • php上传照片
  • 小满内容
  • 关税组成计税价格公式推导
  • 建筑工程收到材料发票怎么做账
  • slf4j、log4j2及logback使用
  • php如何连接html
  • 完美ui
  • PostgreSQL之分区表(partitioning)
  • 将原生html改成vue
  • 纳税总额怎么算
  • 成本费用率和成本费用利润率的区别
  • 出口货物赠品如何申报
  • 没有原始凭证可以记账吗
  • 员工垫付的费用没有发票,放在工资里可以吗
  • 可供分配利润包括哪些
  • 个人为什么不能购买永续债
  • 资产处置损益在资产负债表哪里
  • 审核通过的红字信息表可以删除吗
  • 结转已销商品的销售成本分录
  • 公司股东为另一家公司全股
  • 企业进口外汇额度限制
  • 工业企业应通过其他应付款科目核算的有
  • mysql varchar类型
  • 数据库中经常用的函数
  • windows server 2008文件共享服务器
  • win10系统崩溃后可以通过什么来恢复
  • win10开始按钮点不动
  • Solaris 10 Openssh安装和配置
  • DWHeartbeatMonitor.exe进程是什么意思 DWHeartbeatMonitor是安全的进程吗
  • ebr.ahrcu
  • win7系统如何安装蓝牙驱动
  • win8的系统
  • linux安装xen
  • 批处理在windows中的典型应用
  • github thanos
  • csh,tcsh,bash,sh等shell的区别
  • javascript基础笔记
  • nodejs发送post请求
  • jQuery实现表格与ckeckbox的全选与单选功能
  • android打开相机
  • asp.net mvc view
  • ECMAScript5(ES5)中bind方法使用小结
  • andorids
  • javascript面向对象精要pdf
  • 增值税纳税申报操作流程
  • 国家税务总局千户集团企业名单
  • 12123罚款滞纳金不能交嘛
  • 开票税额超出1万怎么办
  • 社保费是国税还是地税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设