Javascript Can';t在Firebase cloud函数的数组中指定新值
我的Firebase函数有问题,我从Firestore获取一个集合,并尝试在nodejs中本地更改其值(不将其上载回Firestore),但该值保持不变,try/catch没有返回任何错误。 这是我的密码:Javascript Can';t在Firebase cloud函数的数组中指定新值,javascript,node.js,firebase,google-cloud-firestore,Javascript,Node.js,Firebase,Google Cloud Firestore,我的Firebase函数有问题,我从Firestore获取一个集合,并尝试在nodejs中本地更改其值(不将其上载回Firestore),但该值保持不变,try/catch没有返回任何错误。 这是我的密码: function setValueInArray(indexArray, array) { console.log("SetValueInArray"); for (var index of indexArray) { console.log(array[index].d
function setValueInArray(indexArray, array) {
console.log("SetValueInArray");
for (var index of indexArray) {
console.log(array[index].data().value); // **Logs false**
console.log("_________");
array[index].data().value = true;
console.log(array[index].data().value); // **Logs false**
}
}
无法修改该方法返回的对象。必须将其指定给新对象,如下所示:
function setValueInArray(indexArray, array) {
console.log('SetValueInArray');
for (var index of indexArray) {
var newObj = array[index].data();
console.log(newObj.value); // **Logs false**
newObj.value = true;
console.log(newObj.value); // **Logs true**
}
}