使用angular 5 firebase

时间:2018-04-25 16:04:29

标签: typescript firebase firebase-authentication angular5

我想用电子邮件和密码创建一个用户更多的其他数据,例如名称 在我的界面中,我有这个:

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)
}

如何在ID中添加属性名称和uid?

1 个答案:

答案 0 :(得分:0)

[已解决]对我来说,我这样做了

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())
    }
  })
}

这样,我可以在Auth系统中使用电子邮件和密码创建用户,并且我在UserService中为此用户添加了一个分发者,这样我就完成了!