
[英]Nodejs/Mocha - FieldValue.increment - FirebaseError: Function DocumentReference.update() called with invalid data
[英]Google cloud functions Firebase Update FieldValue.increment(1) using NodeJS - TypeError: FieldValue.increment is not a function
我在谷歌云功能中使用 NodeJs,我想增加一个文档中一个参数的值
我启动 Firestore:
const Firestore = require('@google-cloud/firestore');
const PROJECTID = 'XXXX';
const firestore = new Firestore({
projectId: PROJECTID,
timestampsInSnapshots: true
});
并且 my.get() 和 .set() 函数可以正常工作。 但是当我尝试更新一个增加它的值时,我收到 FieldValue.increment 错误
我试过了:
await snapshot.ref.update({ parameter: FieldValue.increment(1) });
添加:
const FieldValue = require('firebase-admin').firestore.FieldValue;
await snapshot.ref.update({ parameter: FieldValue.increment(1) });
如其他网站所述,并且:
documentRef.update(
'parameter', Firestore.FieldValue.increment(1)
)
如https://cloud.google.com/nodejs/docs/reference/firestore/latest/firestore/fieldvalue中所述
const admin = require('firebase-admin');
increment = admin.firestore.FieldValue.increment(1);
await snapshotRef.update({ parameter: increment });
但没有一个工作。
错误:
类型错误:admin.firestore.FieldValue.increment 不是 function
或者
类型错误:FieldValue.increment 不是 function
"dependencies": {
"firebase-admin": "^6.5.1",
"nodemailer": "^6.6.1"
}
如发行说明中所述, increment()
已于 2019 年 4 月添加到 Firestore SDK,但 Firebase Admin 6.5.1
于 2019 年 1 月发布。升级到最新版本应该可以解决此问题。
只需添加命令即可更新到最新的 Firebase Admin 版本。
npm i firebase-admin@latest
您还可以通过将版本更改为最新版本来修改 package.json 中的特定package.json
。 请参阅下面的示例:
"firebase-admin": "latest"
然后运行
npm install
此外,为获得最佳实践,请始终删除node_modules
文件夹和package-lock.json
,然后在部署应用程序之前运行npm install
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.