flat: cityId 合并
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
function format(data) {
|
||||
const result = [];
|
||||
const dic = {'0': {label: 'root', value: '0', children: result}};
|
||||
const labelResult = []
|
||||
const labelChild = {'0': {label: 'root', value: '0', children: labelResult}};
|
||||
|
||||
data.forEach(item => {
|
||||
if (item.layer > 3) {
|
||||
@@ -27,15 +29,26 @@ function format(data) {
|
||||
} else {
|
||||
dic[item.areaId] = node;
|
||||
}
|
||||
node.valueId = node.value
|
||||
node.value = item.areaName
|
||||
if (labelChild.hasOwnProperty(item.parentId)) {
|
||||
if (!labelChild[item.parentId].children) {
|
||||
labelChild[item.parentId].children = [];
|
||||
}
|
||||
labelChild[item.parentId].children.push(node);
|
||||
} else {
|
||||
labelChild[item.parentId] = {children: [node]};
|
||||
}
|
||||
});
|
||||
return {data: result, dic};
|
||||
return {data: result, dic, labelData: labelResult};
|
||||
}
|
||||
|
||||
let loaded = false
|
||||
|
||||
const area = {
|
||||
state: {data: [], dic: {}},
|
||||
actions: {InitArea({commit}) {
|
||||
state: {data: [], dic: {}, labelData: []},
|
||||
actions: {
|
||||
InitArea({commit}) {
|
||||
if (!loaded) {
|
||||
loaded = true
|
||||
import('@/util/area').then((resp) => {
|
||||
@@ -48,9 +61,10 @@ const area = {
|
||||
SET_AREA: (state, data) => {
|
||||
state.data = data.data
|
||||
state.dic = data.dic
|
||||
state.labelData = data.labelData
|
||||
},
|
||||
},
|
||||
getters:{
|
||||
getters: {
|
||||
getAreaParents: (state) => (id) => {
|
||||
const res = [];
|
||||
let item = state.dic[id];
|
||||
|
||||
Reference in New Issue
Block a user