小编Mar*_*lva的帖子

AngularFire2 - 在更新之前检查对象是否存在

假设我正在收集用户名,并且我想检查此用户名是否已存在于我的Firebase数据库中.AngularFire2 updateset方法实际上并不检查对象是否存在,但如果是,则替换它.有没有办法检查并说出返回一个可观察到的错误?

目前我的解决方案是检索对象,如果有结果,我知道它存在.我正在寻找一种更简单的方法来检查它.

我需要将其作为数据库对象,而不是身份验证中的实际用户.

let userExists = false;

this.af.database.object('/users/' + newUser.name).subscribe( user => {
    if (user) {
      userExists = true;
      console.log('This username is taken. Try another one');
    }
    else {
      this._af.database.object('/users/' + newUser.name).update({
         email: 'johndoe@example.com',
         password: '!@#$1234'
     })
   }
});
Run Code Online (Sandbox Code Playgroud)

firebase firebase-realtime-database angularfire2 angular

4
推荐指数
1
解决办法
5117
查看次数