将Promise返回类型添加到Angular中的方法

问题描述 投票:0回答:1

我有以下方法返回TreeNodes数组

  basketItemNodes: TreeNode[] = [];

  getBasketItems() {
    this.basketService.getAllBasketItems()
      .subscribe(
        res => {
          this.basketItemNodes = <TreeNode []> res;            
        },
        err => {
          console.log(err);
        }
      );
      return this.basketItemNodes;
  }

如何将返回类型更改为Promise或Observable?

angular typescript promise return observable
1个回答
1
投票

如果您想返回Observable,请不要在此订阅。相反,您可以简单地将响应映射到<TreeNode []>并返回。

basketItemNodes: TreeNode[] = [];

getBasketItems() {
    return this.basketService.getAllBasketItems()
      .pipe(map(res => this.basketItemNodes = <TreeNode[]> res));
}
© www.soinside.com 2019 - 2024. All rights reserved.