从列表中检索到的选定项目的新列表

时间:2019-05-15 00:11:27

标签: html angular rxjs

我有一个列表,该列表从后端的对象中检索数据,并且从该列表中选择一个项目后,它应该显示其项目,但是我不知道如何在html或rxjs中呈现该项目。

从列表中选择项目Test1后,这是我的当前状态,它检索其内部项目info 1info 2

List:
  List: Array(2)
     0: {name: "Test1", item: Array(2)}
     1: {name: "Test2", item: Array(1)}
     length: 2
     __proto__: Array(0)
   selectedItemData: Array(2)
     0: {name: "info 1", item: Array(1)}
     1: {name: "info 2", item: Array(4)}

但是,即使有关每个选定项目的检索部分的所有内容都可以正常工作,列表也不会改变。

这是我的html:

      <ul class="unstyled" *ngFor="let i of (listObservable$|async).list.List">
        <li><a (click)="selected(i.name)">{{i.name}}</a></li>
      </ul>

1 个答案:

答案 0 :(得分:1)

使用异步管道时,最好使用ngIf并将其映射到视图变量,以便仅在发出可观察对象后才渲染元素。

<ng-container *ngIf="listObservable$ | async as listObj">
  <ul class="unstyled" *ngFor="let i of listObj.list.List">
    <li><a (click)="selected(i.name)">{{i.name}}</a></li>
  </ul>
</ng-container>