getArea() {
queryArea(storage.get(ACCESS_TOKEN)).then((res) => {
var data = res.Result
var areaList = new Array()
let map = {}
data.sort((a, b) => a.pId - b.pId)
data.forEach((resource) => {
resource.children = []
map[resource.id] = resource
if (resource.pId == 0) {
areaList.push(resource)
} else {
if (map[resource.pId]) {
map[resource.pId].children.push(resource)
} else {
throw new Error(`当前循环的数据pId=${resource.pId}有错误`)
}
}
})
this.areaList = this.deleteChildren(areaList)
})
},
//删除最深层空children
deleteChildren(arr) {
let childs = arr
for (let i = childs.length; i--; i > 0) {
if (childs[i].children) {
if (childs[i].children.length) {
this.deleteChildren(childs[i].children)
} else {
delete childs[i].children
}
}
}
return arr
},