在异步函数中,我是否需要返回等待函数正确完成,或者代码是否正常?
const db = admin.firestore();
export const onUserCreate = functions.auth.user().onCreate(async event => {
try {
const user: User = {
userId: event.data.uid,
email: event.data.email
};
await db.doc(`users/${user.userId}`).set(user, {merge: true});
} catch (error) {
throw error;
}
});
答案 0 :(得分:0)
此函数已经返回一个仅在db.doc(...).set(..)
自行解决后才能解析的承诺。在这种情况下,return await
将是多余的。
所以我认为你的代码很好,但它很简单,可以完全忘记完全使用async / await,并直接返回promise。例如:return db.doc(...).set(...)
,未将该函数声明为异步。