CirclonGroup/angular-tree-component

Asynchronous execution in doForAll is unexpected

sechel opened this issue · 0 comments

I try to execute a function for all nodes in the tree and tried using the doForAll tree model function. I was surprised to learn that the corresponding method on the nodes is executed asynchronously:

  doForAll(fn: (node: ITreeNode) => any) {
    Promise.resolve(fn(this)).then(() => {
      if (this.children) {
        this.children.forEach((child) => child.doForAll(fn));
      }
    });
  }

That comes unexpected and is IMO undocumented and may be a bug.