Skip to content

Commit 2a8d8f5

Browse files
committed
fix: 解决异步加载树,setExpandKeys后节点展开但是不展示数据的问题
1 parent 51120b5 commit 2a8d8f5

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

src/store/tree-store.ts

+10-9
Original file line numberDiff line numberDiff line change
@@ -366,13 +366,13 @@ export default class TreeStore extends TreeEventTarget {
366366
* @param triggerEvent 是否触发事件
367367
* @param triggerDataChange 是否触发 `data-change` 事件以通知外部刷新视图
368368
*/
369-
setExpand(
369+
async setExpand(
370370
key: TreeNodeKeyType,
371371
value: boolean,
372372
expandParent: boolean = false,
373373
triggerEvent: boolean = true,
374374
triggerDataChange: boolean = true
375-
): void {
375+
): Promise<void> {
376376
const node = this.mapData[key]
377377
if (!node || (!expandParent && node.isLeaf)) return
378378

@@ -386,7 +386,7 @@ export default class TreeStore extends TreeEventTarget {
386386
if (triggerDataChange) {
387387
this.emit('visible-data-change')
388388
}
389-
new Promise((resolve, reject) => {
389+
await new Promise((resolve, reject) => {
390390
const load = this.options.load as Function
391391
load(node, resolve, reject)
392392
})
@@ -446,7 +446,7 @@ export default class TreeStore extends TreeEventTarget {
446446
}
447447

448448
if (expandParent && node._parent && value) {
449-
this.setExpand(
449+
await this.setExpand(
450450
node._parent[this.options.keyField],
451451
value,
452452
expandParent,
@@ -461,14 +461,15 @@ export default class TreeStore extends TreeEventTarget {
461461
* @param keys 展开的节点 key 数组
462462
* @param value 是否展开
463463
*/
464-
setExpandKeys(
464+
async setExpandKeys(
465465
keys: TreeNodeKeyType[],
466466
value: boolean,
467467
triggerDataChange: boolean = true
468-
): void {
469-
keys.forEach(key => {
470-
this.setExpand(key, value, false, false, false)
471-
})
468+
): Promise<void> {
469+
470+
for (const key of keys) {
471+
await this.setExpand(key, value, false, false, false)
472+
}
472473

473474
if (triggerDataChange) {
474475
this.emit('visible-data-change')

0 commit comments

Comments
 (0)