1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| import Vue from 'vue'
| export default function treeToArray (data, expandAll, parent = null, level = null) {
| let tmp = []
| Array.from(data).forEach(record => {
| if (record._expanded === undefined) {
| Vue.set(record, '_expanded', expandAll)
| }
| let _level = 1
| if (level !== undefined && level !== null) {
| _level = level + 1
| }
| Vue.set(record, '_level', _level)
| // 如果有父元素
| if (parent) {
| Vue.set(record, 'parent', parent)
| }
| tmp.push(record)
| if (record.children && record.children.length > 0) {
| const children = treeToArray(record.children, expandAll, record, _level)
| tmp = tmp.concat(children)
| }
| })
| return tmp
| }
|
|