chore: use cancel in one time listener

This commit is contained in:
EnixCoda 2022-05-15 01:17:20 +08:00
parent a01a7ede9e
commit b0dcb256a7

View file

@ -351,10 +351,11 @@ export class VisibleNodesGenerator extends FlattenLayer {
onNextUpdate(callback: (visibleNodes: VisibleNodes) => void) {
const oneTimeSubscription = (visibleNodes: VisibleNodes) => {
cancel()
callback(visibleNodes)
this.hub.removeEventListener('emit', oneTimeSubscription)
}
return this.hub.addEventListener('emit', oneTimeSubscription)
const cancel = this.hub.addEventListener('emit', oneTimeSubscription)
return cancel
}
update() {