const {functions} = require("firebase-functions");
initializeApp();
const db = getFirestore();
exports.authUserCreated = functions.auth.user().onCreate({region: "europe-west1"}, (user) => {
const userEmail = user.email;
const userId = user.uid;
return db.collection("users").doc(userId).update({createdAt: FieldValue.serverTimestamp(), email: userEmail});
});
部署错误:TypeError: Cannot read properties of undefined (reading 'auth')
您的陈述是错误的。 应该是:
require
我设法将我的代码配置为这样。
const functions = require('firebase-functions');
import { onCall } from "firebase-functions/v2/https";
import { logger } from "firebase-functions";
import * as admin from "firebase-admin";
import * as functions from "firebase-functions/v1";
export const handleUserCreation = functions.auth.user().onCreate(async (user: any) => {
try {
const { uid, email, displayName, photoURL } = user;
logger.info(`New user created: ${email}`);
await db.collection("users").doc(uid).set({
email,
displayName,
photoURL,
createdAt: admin.firestore.FieldValue.serverTimestamp(),
role: "user", // Default role
id: uid
});
logger.info(`User data saved for UID: ${uid}`);
} catch (error: any) {
logger.error("Error saving user data", error);
}
});