Javascript &引用;admin.firestore.FieldValue.arrayUnion(…)不是函数;尝试将数据作为json存储在firestore中时
当我试图将数据以json形式存储在firestore中时,出现错误“admin.firestore.FieldValue.arrayUnion(…)不是函数”,我似乎无法找出我做错了什么 下面是我正在做的一段代码Javascript &引用;admin.firestore.FieldValue.arrayUnion(…)不是函数;尝试将数据作为json存储在firestore中时,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,当我试图将数据以json形式存储在firestore中时,出现错误“admin.firestore.FieldValue.arrayUnion(…)不是函数”,我似乎无法找出我做错了什么 下面是我正在做的一段代码 // eslint-disable-next-line handle-callback-err simpleParser(idHeader + all.body, (err, mail) => { // access to
// eslint-disable-next-line handle-callback-err
simpleParser(idHeader + all.body, (err, mail) => {
// access to the whole mail object
console.log(mail.subject);
console.log(mail.html);
var promises = [];
var docRef = db.collection("Users").doc("6IzsLbD4r4R5RXdGB5BQy6xq8Dc2");
promises.push(
docRef.set(
{
Emails: admin.firestore.FieldValue.arrayUnion(
JSON.stringify()
)({
subject: mail.subject,
body: mail.text,
date: mail.date,
from: mail.from,
}),
//....
},
{ merge: true }
)
);
// eslint-disable-next-line promise/catch-or-return
Promise.all(promises);
});
});
基本上,我试图将主题、正文、日期作为json保存在电子邮件中,但我遇到了这个错误。任何帮助都将不胜感激,因为这件事让我发疯了哈哈我能用这个解决这个问题
promises.push(
docRef.set(
{
Emails: admin.firestore.FieldValue.arrayUnion(
JSON.stringify({
subject: mail.subject,
body: mail.text,
date: mail.date,
from: mail.from,
})
),
//....
},
{ merge: true }
)
);
// eslint-disable-next-line promise/catch-or-return
Promise.all(promises);
});
});
也许这会帮助其他人解决这个问题。我的数据在JSON.stringify()之外。确保将数据放在JSON.stringify(此处)=]中,尝试放置一些
console.log()
并查看admin.firestore.FieldValue的内容