node.js - 在 Cloud Functions for Firebase 中运行 Firestore 批处理

标签 node.js firebase google-cloud-functions google-cloud-firestore

在 Firebase 的 Cloud Functions 中,我尝试运行 admin.firestore.batch(),但收到错误“admin.firestore.batch 不是函数”,请参阅(完全简化的)示例。

exports.getTest = functions.https.onRequest((request, response) => {
  cors(request, response, () => {
    var batch = admin.firestore.batch(); // <--- ERROR HERE
    var docRef = admin.firestore().doc('tariffs/1')
    batch.set(docRef, 'name', 'free');
    return batch.commit();
  }).then(() => {
    response.status(200).send({result: 'success'});
  });
});

我的package.json是

{
  "name": "functions",
  "description": "Cloud Functions for Firebase",
  "dependencies": {
    "cors": "^2.8.1",
    "firebase-admin": "^5.4.2",
    "firebase-functions": "^0.7.1"
  },
  "private": true
} 

是否可以将 firebase.firestore.batch() 与 Cloud Functions 一起使用?

谢谢

最佳答案

您在 admin.firestore 之后缺少 ()

更改此:

var batch = admin.firestore.batch(); // <--- ERROR HERE

对此:

var batch = admin.firestore().batch();

关于node.js - 在 Cloud Functions for Firebase 中运行 Firestore 批处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46892475/

相关文章:

javascript - 客户端找不到 socket.io.js

javascript - 如何在云函数中调用 firestore getDocument 并使用云函数将其响应发送回客户端?

firebase - Firebase ImageMagick 的云函数转换 : not found

Node.Js 从 POST 请求中获取数据

node.js - Three.js 与 typescript 自动完成

javascript - 使用自定义函数扩展 should.js

javascript - NodeJS 和 Neo4j 的异步行为问题

android - IntentService 中未收到广播接收器

java - 在 Firebase 数据库中保存 LocalDate (Java.time) 对象

node.js - Firebase - Node 云函数解析触发器时出错 : Cannot find module 'firebase-functions'