diff --git a/src/components/TreeTable/eval.js b/src/components/TreeTable/eval.js index dcb8fe24..96d16832 100644 --- a/src/components/TreeTable/eval.js +++ b/src/components/TreeTable/eval.js @@ -1,24 +1,29 @@ import Vue from 'vue' // 给数据添加额外的几个属性,并且扁平化数组 -export default function formatData( +export default function treeToTable( data, - { parent = null, leavel = 0, expand = false } = {} + { parent = null, leavel = 0, expand = false, children = 'children', show = true, select = false } = {} ) { - console.log('data', data) let tmp = [] data.forEach(item => { Vue.set(item, '__leavel', leavel) Vue.set(item, '__expand', expand) Vue.set(item, '__parent', parent) + Vue.set(item, '__show', show) + Vue.set(item, '__select', select) tmp.push(item) - if (item.children && item.children.length > 0) { - const children = formatData(item.children, { + if (item[children] && item[children].length > 0) { + const res = treeToTable(item[children], { parent: item, - leavel: leavel + 1 + leavel: leavel + 1, + expand, + children, + status, + select }) - tmp = tmp.concat(children) + tmp = tmp.concat(res) } }) return tmp diff --git a/src/components/TreeTable/index.vue b/src/components/TreeTable/index.vue index 5421fb51..ef171194 100644 --- a/src/components/TreeTable/index.vue +++ b/src/components/TreeTable/index.vue @@ -1,26 +1,30 @@