AngularFireDatabase.list上的GroupBy不起作用
创始人
2024-10-24 21:01:25
0

要在AngularFireDatabase.list上使用GroupBy功能,您可以使用RxJS的groupBy运算符。这将允许您将列表中的元素按特定条件进行分组。

以下是一个示例代码,演示如何在AngularFireDatabase.list上使用groupBy功能:

import { Component } from '@angular/core';
import { AngularFireDatabase } from '@angular/fire/database';
import { Observable } from 'rxjs';
import { groupBy, mergeMap, toArray } from 'rxjs/operators';

@Component({
  selector: 'app-root',
  template: `
    
  • {{ group.key }}

    • {{ item.name }}
`, }) export class AppComponent { groups$: Observable; constructor(private db: AngularFireDatabase) { this.groups$ = this.db .list('/items') .snapshotChanges() .pipe( groupBy((changes) => changes.payload.val().category), mergeMap((group) => group.pipe(toArray()).pipe(map((items) => ({ key: group.key, items: items }))) ), toArray() ); } }

在上述代码中,我们使用snapshotChanges方法获取数据库中的数据,并使用groupBy运算符根据category字段对数据进行分组。然后,我们使用mergeMap将每个组中的元素转换为数组,并将其映射为包含组键和组元素的对象。最后,我们使用toArray将所有组收集到一个数组中。

在模板中,我们通过async管道将结果绑定到组件的groups$属性,并使用嵌套的ngFor循环来显示分组的数据。

请确保在使用该示例代码之前,已正确安装和配置了AngularFire2库和Firebase。

相关内容

热门资讯

玩家必备攻略!德州透视hhpo... 玩家必备攻略!德州透视hhpoker,wpk俱乐部是做什么的,真是是真的有挂(有挂秘诀)所有人都在同...
9分钟了解!拱趴大菠萝有什么挂... 9分钟了解!拱趴大菠萝有什么挂,hhpoker免费辅助器,本来真的有挂(竟然有挂)9分钟了解!拱趴大...
每日必备!德州局透视,如何判断... 每日必备!德州局透视,如何判断wpk辅助软件的真假,真是存在有挂(有挂存在)1、下载好脚本下载之后点...
推荐十款!hhpoker智能辅... 推荐十款!hhpoker智能辅助插件,hhpoker免费透视脚本,好像是有挂(发现有挂)1、游戏颠覆...
普及知识!哈糖大菠萝有挂吗,a... 普及知识!哈糖大菠萝有挂吗,aa poker透视软件,好像真的有挂(有挂实锤)1、金币登录送、破产送...
我来教教你!wpk辅助插件,佛... 我来教教你!wpk辅助插件,佛手在线大菠萝辅助,本来存在有挂(有挂透视)运佛手在线大菠萝辅助辅助工具...
分辨真假!pokernow辅助... 分辨真假!pokernow辅助控制,wepoker好友助力码,一贯有挂(有挂分析)小薇(辅助器软件下...
最新技巧!fishpoker透... 最新技巧!fishpoker透视底牌,wpk透视辅助靠谱吗,总是是真的有挂(有挂秘笈)1、最新技巧!...
三分钟了解!wpk有作弊吗,有... 三分钟了解!wpk有作弊吗,有哪些免费的wpk作弊码,总是真的是有挂(有挂细节)在进入软件靠谱后,参...
带你了解!wpk私人局辅助是真... 带你了解!wpk私人局辅助是真的吗,sohoo辅助,总是真的是有挂(证实有挂)1、玩家可以在线上大神...