在用ztree.js做区域组织管理树的时候,后端给的区域与省的ID有相同的情况,这导致ztree.js的API很难用,pId会出现相同的情况,导致省与城市的挂载混乱。
为了解决这个问题,自己使用了10000,20000,30000的区别码与后端给的ID做字符串连接,但在调整省与市到别的区域的时候,逻辑不是那么清晰。
obj.forEach(function (item, index) { item.id = '10000' + id + '20000' + item.provinceId; item.name = item.provinceName; item.newId = '20000' + item.provinceId; item.pId = '10000' + id; item.open = true; zNodes.push(item); ztreeSet(); flagArea.push(id); });
今天去看了下后端数据库,发现区域的ID竟然是他自己随便定的,并不是国标码或公司的标准码。。早知道就直接让他把区域的ID全定为10000开头的就好了。