Javascript 如何从firestore获取两个查询?
我使用redux,想知道如何从firesotre获取和处理两个查询Javascript 如何从firestore获取两个查询?,javascript,node.js,google-cloud-firestore,react-redux,Javascript,Node.js,Google Cloud Firestore,React Redux,我使用redux,想知道如何从firesotre获取和处理两个查询 export function getBlackList(data) { return (dispatch, getState) => { let db = loadFB().firestore(); let query = db.collection('users').where("report.total_point",">",0).orderBy("report.tot
export function getBlackList(data) {
return (dispatch, getState) => {
let db = loadFB().firestore();
let query = db.collection('users').where("report.total_point",">",0).orderBy("report.total_point","asc");
return query.get().then(docs=>{
let result = [];
console.log(result);
docs.forEach(doc=>{
let user = doc.data();
user.id = doc.id;
result.push(user);
})
dispatch({
type: types.SET_USER_LIST,
data: result,
page : 1
})
})
}
}
通过上面提供的代码,组件通过分派进行处理
我得到一个查询,但我想知道如何得到这两个查询值把它们放在一起分类
db.collection('users').where("memo",">","0").orderBy("memo","asc");
有没有办法用“承诺一切”来解决这个问题
期待一个好的解决方案。您的查询将返回多个项目。如果需要,可以使用
映射
和排序
然后,我觉得调度redux的电话没问题
query.get().then(docs => {
const users = docs.map(doc => ({
id: doc.id,
...doc.data(),
}));
// .sort(...)
dispatch({
type: types.SET_USER_LIST,
data: users,
page: 1,
});
});
无法使用从同一集合中查询两个值,Promise.all用于从集合组[不同集合]检索数据,而不是从单个集合检索数据
要进行查询,请使用以下代码:
let query: db.collection('users').where("memo",">","0").where("memo2","<","3");
query.orderBy("memo","asc");