array2tree
中文.md
https://github.com/lihang90/array2tree
Convert array to tree, array item id is related pid default.
Defined yourself related params in parameter you can.
Just like
[
{
id: 1,
pid: 0,
name: 'level 1'
},
{
id: 2,
pid: 1,
name: 'level 2'
}
...
]
convert to
[{
id: 1,
pid: 0,
name: 'level 1',
children: [
{
id: 2,
pid: 1,
name: 'level 2',
children: [...]
}
]
},...]
How to use
npm install
$ npm install array2tree --save
use
`
javascript const array2tree = require('array2tree');
const testArr = [ { id: 1, pid: 0, name: 'level 1' }, { id: 2, pid: 1, name: 'level 2' }, { id: 3, pid: 2, name: 'level 3' } ];
const tree = array2tree(testArr);
console.log(tree); /* [{ id: 1, pid: 0, name: 'level 1', children: [ { id: 2, pid: 1, name: 'level 2', children: [ { id: 3, pid: 2, name: 'level 3', children: [] } ] } ] }] */
* use parameter by yourself
```javascript
const array2tree = require('array2tree');
const testArr = [
{
myId: 1,
parentId: 0,
name: 'level 1'
},
{
myId: 2,
parentId: 1,
name: 'level 2'
},
{
myId: 3,
parentId: 2,
name: 'level 3'
}
];
const tree = array2tree(testArr, 'myId', 'parentId');
console.log(tree);
/*
[{
myId: 1,
parentId: 0,
name: 'level 1',
children: [
{
myId: 2,
parentId: 1,
name: 'level 2',
children: [
{
myId: 3,
parentId: 2,
name: 'level 3',
children: []
}
]
}
]
}]
*/
How to test
$ npm install && npm test