Я только что создал функцию Firebase, которая запускается при создании документа Firestore (с правилами для записи только администратору). Затем используйте admin.auth (). CreateUser (), чтобы создать нового пользователя правильно.
export const createUser = functions.firestore
.document('newUsers/{userId}')
.onCreate(async (snap, context) => {
const userId = context.params.userId;
const newUser = await admin.auth().createUser({
disabled: false,
displayName: snap.get('displayName'),
email: snap.get('email'),
password: snap.get('password'),
phoneNumber: snap.get('phoneNumber')
});
// You can also store the new user in another collection with extra fields
await admin.firestore().collection('users').doc(newUser.uid).set({
uid: newUser.uid,
email: newUser.email,
name: newUser.displayName,
phoneNumber: newUser.phoneNumber,
otherfield: snap.get('otherfield'),
anotherfield: snap.get('anotherfield')
});
// Delete the temp document
return admin.firestore().collection('newUsers').doc(userId).delete();
});
Существуют различные пути, самые очевидные два были бы:
Я предпочитаю не служить статическим файлам через любой вид сценария, но мне также нравится разрабатывать мой код приблизительно с 10 отдельными маленькими файлами класса без стоимости 10 Запросов HTTP. Таким образом, я придумал сделанный на заказ процесс, который комбинирует все наиболее распространенные классы и функции и затем уменьшает их в единственный файл как project.min.js, и имейте условие во всех моих представлениях/шаблонах, которое включает этот файл в производство.
Редактирование - "сделанный на заказ процесс" является на самом деле чрезвычайно простым сценарием жемчуга. Это читает в каждом из файлов, которые я передал как аргументы, и пишет им в новый файл, дополнительно передавая всю вещь через JSMIN (доступный на всех Ваших любимых языках) автоматически.
При команде как он похож:
perl build-project-master.pl core.js class1.js etc.js /path/to/live/js/file.js
Существует хорошее сообщение в блоге на этом http://www.hunlock.com/blogs/Supercharged_Javascript.
То, что Вы хотите, Уменьшают. Я просто записал пошаговую демонстрацию для установки его.