6
私は2つのオブジェクトを持つデータベースを持っています。それは次のようになります。ユーザーはデータベースの問題は何ですかFirebase Angularfire2データベースにユーザが存在するかどうかをチェック
constructor(private af: AngularFire) {
this.users = af.database.list('/users');
}
registerUser(login: string, password: string) {
this.af.database.list('/users', {
query: {
orderByChild: 'login',
equalTo: login
}
}).subscribe(response => {
if(response.length === 0) {
console.log("User does not exist");
//here i will add a user
} else {
console.log("Users exists");
}
})
}
に存在する場合
users
- KEY
login: "xexe"
password: "123"
- KEY
login: "dede"
password: "123"
は、今私がチェックしていますか?
私は送信ボタンを初めてクリックすると
、コンソールが表示さ(ユーザーがすべき存在する)のは、「DEDE」ログインでユーザーを登録してみましょう: Users exists
は - >まあ、それは良いことです。
問題は、私は(Webページを更新せず)は、第2の時間を提出
をクリックすると、その後にconsole.logは私の二つのメッセージ
User does not exist
User exists
を示し、それは何がいけない、新しいユーザーを追加しています終わり。なぜ2回目のsubscribe関数がすべての行を繰り返すのですか?それを修正するには?
'if(data。$ value!= null){'の代わりに 'if(data。$ value!= null){' – alltej
私はangularFire2を使用しています。このオブジェクトのチェックは機能していないようです。 – alltej
私は '' const user = this.af.database.object( '' users/$ {login} ''、{{preserveSnapshot:true}} ''を ''働かせて '' data.val( ) '' – alltej