博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
级联选择器绑定父级id的方法
阅读量:7202 次
发布时间:2019-06-29

本文共 1125 字,大约阅读时间需要 3 分钟。

hot3.png

1.查询级联选择器部门接口的内容

queryDeptTree() {

var userId = this.$store.getters.accountId

enterpriseDeptTree({ 'user_id': userId }).then(response => {

this.deptOptions = response.data.data

this.makeDeptMap(this.deptOptions)      //将拿到的部门结构id做成一张map

})

}

2.制作map

//递归存储到deptMap

makeDeptMap(currentDept) {

var dept

if (currentDept.length === 1) {

dept = currentDept[0]

this.deptMap[dept.deptId + ''] = dept.pid          //pid为父节点id

if (dept.childEnterpriseDeptList !== undefined && dept.childEnterpriseDeptList.length > 0) {

this.makeDeptMap(dept.childEnterpriseDeptList)

}

} else {

currentDept.forEach(curDept => {

dept = curDept

this.deptMap[dept.deptId + ''] = dept.pid

if (dept.childEnterpriseDeptList !== undefined && dept.childEnterpriseDeptList.length > 0) {

this.makeDeptMap(dept.childEnterpriseDeptList)

}

})

}

}

3.找当前id的父id制作id串:

this.findAncestorById(this.oldDeptId)

findAncestorById(deptId) {

this.contentDept.unshift(deptId)

var curDeptId = this.deptMap[deptId]

while (curDeptId !== undefined && curDeptId !== 0) {

this.contentDept.unshift(curDeptId)

curDeptId = this.deptMap[curDeptId]

}

}

 

转载于:https://my.oschina.net/u/3762697/blog/1633965

你可能感兴趣的文章
一个立体感的按钮样式
查看>>
下载安装MariaDB Galera 10.1
查看>>
传美团支付无证经营被央行叫停 限期三个月整改
查看>>
Redis笔记3-redis事务
查看>>
日本保险公司引进IBM Watson,裁员近30%
查看>>
第64天:CSS常用命名规范,有用!
查看>>
PHP代码审计笔记--命令执行漏洞
查看>>
redis成长之路——(七)
查看>>
[转]JDK、JRE、JVM三者间的关系
查看>>
TomTom收购Autonomos,自动驾驶又有新玩家入场
查看>>
DOM(文档对象模型)基础加强
查看>>
Ubuntu 16.04下安装Charles抓包工具
查看>>
python常用数据类型操作-时间日历
查看>>
Expert 诊断优化系列------------------你的CPU高么?
查看>>
量子电路制冷器:让量子计算更加可靠!
查看>>
大数据项目为什么失败,2017年将有何不同
查看>>
区块链概念1:Hash 算法
查看>>
无人机市场是泡沫,一碰就碎?
查看>>
一文看懂量子十问(上篇)
查看>>
Linux运维工程师笔试题系列1(30题)
查看>>