如何检查Firebase文档是否具有带值的字段?

问题描述

我正忙于学习Angular + Firebase,遇到一个问题。我有一组用户和一个角色。我正在使用为用户生成的ID存储我的角色数据。这是屏幕截图:

Firebase snapshot

我想使用canActivate函数来管理谁可以编辑哪些数据。您如何检查用户的admin字段是否设置为true?我可以通过以下方式获取用户的角色文档:

this.afs.collection('roles').doc(id).valueChanges()

我可以这样显示HTML中的数据:

*ngIf="roles$ | async as roles"

但是,我想用它来验证用户是否具有管理员权限。

解决方法

您将必须使用NavDestinationDialogFragment运算符才能仅从Firebase流中获取第一个发射。 take(1)后卫希望first()完成:

CanActivate

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...