我正在使用角度6从Firestore中获取数据。 我有一个名为用户的集合,该集合的每个文档都包含用户信息,每个用户可以具有“管理员”,“ ASM”或“推销员”这三个用户角色之一。我使用company_code作为过滤器。 现在,当我获取数据时,仅获取所有company_code的管理员,然后在一段时间后获取所有其他用户。 有人可以告诉我我在做什么错
getAllUsers(companycode){
this.afs.collection('users',ref=>ref
.where("company_code","==",companycode))
.snapshotChanges().pipe()
.map(res=>res.map(res=> res.payload.doc.data()))
.subscribe(res=>{
console.log(res)
});
}
答案 0 :(得分:1)
步骤1。创建一个timestamp
字段或precedence
来引用您的订单。
第2步。在查询中添加orderBy
getAllUsers(companycode) {
this.afs.collection('users', ref =>
ref.where("company_code", "==", companycode).orderBy('timestamp')
)
.snapshotChanges().pipe()
.map(res => res.map(res => res.payload.doc.data()))
.subscribe(res => {
console.log(res)
});
}
假设您正在使用angularfire2
答案 1 :(得分:0)
要获取所有公司用户,请删除此行 .where(“ company_code”,“ ==”,companycode)
要获取所有公司销售人员,请使用 .where(“ comoany_code”,“ ==”,“推销员”