【发布时间】:2020-01-19 03:51:36
【问题描述】:
我正在尝试使用 firebase 函数中的 onCreate 用户数据创建一个新文档、集合和另一个文档。请看下面的代码
exports.newUser = functions.auth.user().onCreate((user) => {
var data = {
Fabric: 10,
Leather: 10,
Paint: 10,
Wheel: 10,
Windscreen: 10
};
//Create new doc/collection/doc and set fields from data.
return admin.firestore()
.collection('users')
.doc(userId)
.collection('settings')
.doc('expiredates')
.set(data)
.catch(error => {
console.log('Error writing document: ' + error);
return false;
});
});
【问题讨论】:
-
有什么问题?
-
当我创建一个新帐户时它不起作用。
-
它应该创建一个名为 userId 的文档,一个名为 settings 的集合,以及一个具有上述值的过期文档
-
这对我们来说很难仅根据代码进行故障排除,乍一看在语法上很好。请记住,StackOverflow 是一个非常低效的交互式调试器。您是否检查了 Cloud Functions 控制台以查看该函数是否实际被调用?有输出吗?它说了什么?您是否尝试将调试日志记录添加到函数中以查看哪个特定语句没有按照您的预期执行?你能用更少的代码重现这个问题吗?用更少的产品?另见how to create a minimal, complete, verifiable example
-
解决了...这是一个语法错误:它是 user.uid 而不是 userId
标签: node.js google-cloud-firestore firebase-authentication google-cloud-functions firebase-admin