Array Union 未在 Firebase Firestore reactjs 中定义
Array Union is not Defined in Firebase Firestore reactjs
我试图让我的用户一次上传多张图片。现在一切正常,我唯一的问题是我没有在我的 firebase firestore 文档中将下载 Urls 作为数组获取。
我正在使用 arrayUnion() 函数将所有内容合并到一个数组中,但它给了我这个错误。 "Unhandled Rejection (ReferenceError): arrayUnion is not defined"
我做错了什么?
这是我的代码:
firebase
.firestore()
.collection("Properties")
.add({
propname: propName,
price: price,
bedrooms: bedroom,
bathroom: bathroom,
exclusive: exclusive,
area: area,
type: type,
category: category,
features: features,
services: services,
summary: summary,
// imageUrls: urls,
location: location,
salesAgentID: salesAgent,
date: getCurrentDate(),
})
.then(result => {
const promises = [];
Promise.all(
selectedImages.map(image => {
const storageRef = storage.ref(
`propertyImages/${result.id}/${image.name}`
);
storageRef.put(image).then(urls => {
storageRef.getDownloadURL().then(downloadUrls => {
console.log(downloadUrls);
firebase
.firestore()
.collection("Properties")
.doc(result.id)
.update({
propertyID: result.id,
images: arrayUnion(downloadUrls),//here is my problem
})
.then(res => {
//handleUploadChange();
alert("Property Added Successfully");
window.location.reload();
});
});
});
})
);
});
我使用 Firebase 文档 (documentation link) 中提到的这行代码 firebase.firestore.FieldValue.arrayUnion(downloadUrls)
解决了这个问题,因为他们升级了 Firebase 版本。
我试图让我的用户一次上传多张图片。现在一切正常,我唯一的问题是我没有在我的 firebase firestore 文档中将下载 Urls 作为数组获取。
我正在使用 arrayUnion() 函数将所有内容合并到一个数组中,但它给了我这个错误。 "Unhandled Rejection (ReferenceError): arrayUnion is not defined"
我做错了什么?
这是我的代码:
firebase
.firestore()
.collection("Properties")
.add({
propname: propName,
price: price,
bedrooms: bedroom,
bathroom: bathroom,
exclusive: exclusive,
area: area,
type: type,
category: category,
features: features,
services: services,
summary: summary,
// imageUrls: urls,
location: location,
salesAgentID: salesAgent,
date: getCurrentDate(),
})
.then(result => {
const promises = [];
Promise.all(
selectedImages.map(image => {
const storageRef = storage.ref(
`propertyImages/${result.id}/${image.name}`
);
storageRef.put(image).then(urls => {
storageRef.getDownloadURL().then(downloadUrls => {
console.log(downloadUrls);
firebase
.firestore()
.collection("Properties")
.doc(result.id)
.update({
propertyID: result.id,
images: arrayUnion(downloadUrls),//here is my problem
})
.then(res => {
//handleUploadChange();
alert("Property Added Successfully");
window.location.reload();
});
});
});
})
);
});
我使用 Firebase 文档 (documentation link) 中提到的这行代码 firebase.firestore.FieldValue.arrayUnion(downloadUrls)
解决了这个问题,因为他们升级了 Firebase 版本。