将firebase用户保存到firestore并添加新元素



我有一个firebase函数,它是用onCreate方法触发的。在这个功能中,我将用户数据复制到firestore中。一切都很好,除了当我试图向用户对象添加新元素时(即使没有抛出错误(,新的firestore文档不会显示添加的元素。

这是我的消防仓库功能:

const admin = require('firebase-admin');
admin.initializeApp();
const db = admin.firestore();

exports.newUser = functions.auth.user().onCreate((user)=>{
// create new variable 
let currentUser = user;
//add hasSeenProfileUpdate element to the currentUser. This is what I need to add and ultimately save in the firestore
currentUser.hasSeenProfileUpdate = false;
return db
.collection("user")
.doc(user.uid)
.create(JSON.parse(JSON.stringify(currentUser)))

})

该函数运行良好,currentUser被保存到firestore。但是hasSeenPfileUpdate元素没有显示在firestore中。currentUser上的console.log也没有显示新元素。

非常感谢您的帮助!

(感谢@Dharmaraj(发布重构后的代码,现在可以使用:

const admin = require('firebase-admin');
admin.initializeApp();
const db = admin.firestore();
exports.newUser = functions.auth.user().onCreate((user)=>{
const currentUser = JSON.parse(JSON.stringify(user));
return db
.collection("user")
.doc(user.uid)
.create({
...currentUser,
hasSeenProfileUpdate: false
})
})

最新更新