我无法从Firebase Firestore中的Firebase云功能编写数据

时间:2018-02-07 21:48:09

标签: javascript firebase google-cloud-functions google-cloud-firestore

几天前我开始使用Firebase云功能,但我无法将数据写入数据库。 你可以帮帮我吗。 提前谢谢。

const functions = require('firebase-functions');
const admin = require('firebase-admin');

admin.initializeApp(functions.config().firebase);

exports.userCreated = functions.auth.user().onCreate(event => {
    let userId = event.data.uid;
    let userName = event.data.displayName;

    admin.firestore()
    .collection("users")
    .doc(userId)
    .set({
        name: userName,
        city: "",
        rating: 0
    });
});

1 个答案:

答案 0 :(得分:2)

see the documentation了解云功能如何与异步代码配合使用。

您没有从您的功能中退回承诺。如果您的函数执行任何产生promise的异步工作,您必须通过返回在工作完成时解析的promise来指示Cloud Functions等待该工作完成:

exports.userCreated = functions.auth.user().onCreate(event => {
    let userId = event.data.uid;
    let userName = event.data.displayName;

    return admin.firestore()
    .collection("users")
    .doc(userId)
    .set({
        name: userName,
        city: "",
        rating: 0
    });
});