Создайте пользователя с электронной почтой и паролем, используя angular 5 firebase - PullRequest
0 голосов
/ 25 апреля 2018

Я хотел бы создать одного пользователя с адресом электронной почты и паролем, а также другие данные, например, имя. В моем интерфейсе у меня есть это:

export interface UserInterface {

  id?: string;
  name: string;
  email: string;
  password: string;
  status: string

 constructor(auth) {
   this.id = auth.uid
 }
}

и мой сервис у меня есть:

createUser(user: UserInterface) {
  return this.angularFireAuth.auth.createUserWithEmailAndPassword(user.email, user.password)
}

Как я могу добавить атрибуты name и uid в ID?

1 Ответ

0 голосов
/ 25 апреля 2018

[РЕШЕНО] Для меня, я сделал так

AuthService У меня есть

  createUser(user: UserInterface) {
       return this.angularFireAuth.auth.createUserWithEmailAndPassword(user.email, user.password)
                            .then(() => {
                              this.service.save(user);
                            })
                            .catch((e) => console.log(e));
  }

И в моем UserService у меня есть

save(user: any) {
return new Promise((resolve, reject) => {
  if(user.key) {
    this.db.list(this.PATH)
          .update(user.key, ({ name: user.name }))
          .then(() => resolve())
          .catch((e) => reject(e))
  } else {
    this.db.list(this.PATH)
            .push({ name: user.name })
            .then(() => resolve())
    }
  })
}

Таким образом, яЯ могу создать пользователя с помощью электронной почты и пароля в системе аутентификации, и я добавляю атрибуты этому пользователю в UserService, так я и сделал!

...