用法
更多增删改查搜 参考
data - tree 模块
const config = {
parent: 'parentKey', //父级key 或id 名称
children: 'children', //子数组名称
title: 'name', //标题名称
value: 'key', //唯一key 或id名称
};
let tree = Tree.of([], config).set({
name: '12',
key: '12'
}).set({
parentKey: '12',
name: '12-2',
key: '12-2'
}).end()
// tree ==> [ { name: '12', key: '12', children: [ [Object] ] } ]
原码
class Tree {
line = []
config
constructor(line , config ) {
this.config = config
this.line = line
}
/**
* @param tree 树形数据
* @param {
* parent: 父级id名称
* children: 子数组名称
* title: 标题名称
* value: 唯一value
* }
* @param {'line' | 'tree' | 'map'} dataType 数据类型
* @returns Tree 把别的数据类型转换成line形保存并new Tree 一个实例
*/
static of(data, config, dataType = 'tree') {
let line
switch (dataType) {
case 'tree':
line = new Tree([], config).treeToLine(data)
break;
case 'map':
line = new Tree([], config).mapToLine(data)
break;