1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| /**
| * @Author: jianglei
| * @Date: 2017-10-12 12:06:49
| */
| 'use strict'
| import Vue from 'vue'
| export default function treeToArray(data, expandAll, parent = null, level = null) {
| let tmp = []
| Array.from(data).forEach(function(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.child && record.child.length > 0) {
| const child = treeToArray(record.child, expandAll, record, _level)
| tmp = tmp.concat(child)
| }
| })
| return tmp
| }
|
|