@zhaoyifeng/easy-tree

1.0.5 • Public • Published

easy-tree

常用的树工具

$ npm install @zhaoyifeng/easy-tree
import * as easyTree from '@zhaoyifeng/easy-tree'
// or
import { flat, filterNode } from '@zhaoyifeng/easy-tree'

API

flat(tree)

扁平化

const data = flat(treeData)

findNode(tree, predicate)

查找

const data = findNode(treeData, (node) => node.key === '0')

filterNode(tree, predicate)

筛选

const data = filterNode(treeData, (node) => node.key === '0')

insertBefore(tree, predicate, object)

向节点前插入数据

const data = insertBefore(treeData, (node) => node.key === '0', { title: '0000', key: '0000' })

insertAfter(tree, predicate, object)

向节点后插入数据

const data = insertAfter(treeData, (node) => node.key === '0', { title: '0000', key: '0000' })

insertToChild(tree, predicate, isBefore = false)

插入到子节点

const data = insertToChild(treeData, (node) => node.key === '1', { title: '0000', key: '0000' }, true)

updateNode(tree, predicate)

修改节点

const data = updateNode(treeData, (node) => node.key === '0', (node) => ({ ...node, title: '0000' }))

deleteNode(tree, predicate)

删除节点

const data = deleteNode(treeData, (node) => node.key === '1')

replaceNode(tree, func)

替换树节点对象

const data = replaceNode(treeData, node => ({
  id: node.id
}))

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.0.51latest

Version History

VersionDownloads (Last 7 Days)Published
1.0.51
1.0.30
1.0.20
1.0.10
1.0.00

Package Sidebar

Install

npm i @zhaoyifeng/easy-tree

Weekly Downloads

1

Version

1.0.5

License

ISC

Unpacked Size

6.99 kB

Total Files

5

Last publish

Collaborators

  • zhaoyifeng