现在我可以获取文档 ID 并将数据插入 DriversCurrentBookings 中。当新的 currenUserRequest 文档 ID 添加到集合数据库中时,它应该在 firebase 中实时更新(使用云 firestore)
这里是使用的代码:
var citiesRef = db.collection('UsersBookingRequest');
var allCities = citiesRef.get()
.then(snapshot => {
snapshot.forEach(doc => {
console.log(doc.id, '=>', doc.data());
var reqID = doc.data().UID;
var cityRef = db.collection('UsersBookingRequest').doc(reqID);
var getDoc = cityRef.get()
.then(doc => {
if (!doc.exists) {
console.log('No such document!');
} else {
console.log('Document data:', doc.data());
lat = doc.data().Currentlat;
long = doc.data().Currentlong;
UID = doc.data().UID;
// token = doc.data().token;
address = doc.data().address;
date = doc.data().date;
time = doc.data().time;
console.log(lat);
console.log(long);
console.log(UID);
// console.log(token);
console.log(address);
console.log(date);
console.log(time);
var data = {
lat: lat,
long: long,
UID: UID,
address: address,
date: date,
time: time
// token: token
};
// Add a new document in collection "cities" with ID 'LA'
var setDoc =
db.collection('DriversCurrentBookings').doc(doc.data().UID).set(data);
}
})
.catch(err => {
console.log('Error getting document', err);
});
})
})
.catch(err => {
console.log('Error getting documents', err);
});
最佳答案
您可以通过调用 .id
或 .ref
轻松获取添加文档的 ID(如果您希望将整个引用存储在另一个位置)。
示例 1
return db.collection('myCollection').add(someData)
.then(response => {
console.log(`Document ID: ${response.id}`);
})
.catch(err => {
console.error(err);
});
示例 2
let docRef = db.collection('myCollection').doc();
console.log (`Document ID: ${docRef.id}`);
return docRef.set(someData)
.then(response => {
console.log('The data was saved');
})
.catch(err => {
console.error(err);
});
关于javascript - 如何在node js中使用cloud firestore实时更新请求id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49649284/