Skip to content

Commit e57382c

Browse files
committed
更新方法: 获取所有满足条件的节点数量
1 parent 3c2638b commit e57382c

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,7 @@ Vue.use(SearchTree)
8080
| append | 通过key添加一个子节点 | 参数1: 唯一标识key或当前节点, 参数2: node节点 | String / Number | 成功返回true, 失败返回false
8181
| insertBefore | 通过key在前添加一个兄弟节点 | 参数1: 唯一标识key或当前节点, 参数2: node节点 | String / Number | 成功返回true, 失败返回false
8282
| insertAfter | 通过key在后添加一个兄弟节点 | 参数1: 唯一标识key或当前节点, 参数2: node节点 | String / Number | 成功返回true, 失败返回false
83-
| getTotalOfNodes | 获取全部节点的数量 | - | - | 返回全部节点的数量
83+
| getTotalOfNodes | 获取所有满足条件的节点数量 | - | Function | 所有满足条件的节点数量
84+
85+
- **`getTotalOfNodes` 使用示例:**
86+
- 获取所有名称包含'北京'的节点: `getTotalOfNodes(node => node.name.indexOf('北京') > -1)`

src/search-tree.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,9 +297,9 @@ export default {
297297
arr.splice(arr.findIndex(item => item === curr) + 1, 0, node)
298298
return true
299299
},
300-
getTotalOfNodes () {
300+
getTotalOfNodes (callback = node => true) {
301301
let n = 0
302-
this._preorder(this.sourceData, node => n++ && false)
302+
this._preorder(this.sourceData, node => callback(deepCopy(node)) && n++ && false)
303303
return n
304304
}
305305
}

0 commit comments

Comments
 (0)