javascript - Angular - 按类别显示可观察列表
问题描述
我有类别表和按类别列出的项目列表。我想在其类别下显示列表。目前正在尝试使用 *ngIf="cat.id === mylist.catid" 来实现这一点,但无法正常工作。有什么建议吗?
categories: Observable<any[]>;
myList: Observable<any[]>;
this.db.GetDatabaseState().subscribe(rdy => {
if (rdy) {
this.categories = this.db.getCategories();
this.myList = this.db.getList();
}
<div *ngFor="let cat of categories | async">
<ion-label>
{{ cat.CategoryName }}
</ion-label>
<ion-row>
<ion-col *ngFor="let mylist of myList | async">
<ion-item *ngIf="cat.id === mylist.catid">
<ion-label>{{mylist.Name}}</ion-label>
</ion-item>
</ion-col>
</ion-row>
</div>
这是 Categories 和 MyList 的样子
类别
1、“水果”
2、“书籍”
我的列表
1, 1, '香蕉'
2, 1, '橙色'
3, 2, '关键对话'
4, 2, '影响'
解决方案
最好使用SwitchMap
而不是使用订阅里面subscribe
。
categories$: Observable<any[]>;
myList$: Observable<any[]>;
this.db.GetDatabaseState().subscribe(rdy => {
if (rdy) {
this.categories$ = this.db.getCategories();
this.myList = this.db.getList();
}
}
safe operator
在 html 中使用。
{{ cat?.CategoryName }}
推荐阅读
- oracle - Oracle SQL:具有两列的单个索引与一列上的索引
- c# - 如何在 Angular 10 中使用 DevExpress 报表设计器和报表查看器
- c# - ASP.NET, C# | 如何在控制器中使用方法(和返回值)?
- python - Numpy 使用多维数组来索引一维数组
- jsf - 数据表列中的 Primefaces 删除和确认对话框 - 删除一行 - 不起作用
- javascript - 与物体(墙壁)碰撞
- android - Android - 如何将数据从服务传递到活动
- java - 在具有 azure 函数 @ServiceBusQueueTrigger 的 java 中,如何获取标签、自定义属性和代理属性?
- karate - 具有数据库查找的空手道自动化框架设计
- python - 修复 UnboundLocalError:在 python/pygame 中的赋值错误之前引用了局部变量 'click'?