假設我正在收集用戶名,並且我想檢查這個用戶名是否已經存在於我的Firebase數據庫中。 AngularFire2 update
或set
方法實際上並不檢查對象是否存在,但如果存在則替換它。有沒有辦法檢查,並說返回一個可觀察的錯誤?AngularFire2 - 在更新之前檢查對象是否存在
目前我的解決方案是檢索對象,如果有結果,我知道它存在。我正在尋找更直接的方法來檢查。
我需要做的是一個數據庫對象,而不是身份驗證中的實際用戶。
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: '[email protected]',
password: '[email protected]#$1234'
})
}
});
謝謝! @adriancarriger。有用!!。我在實施中添加了一些額外的細節。 –
太棒了,很高興幫助! – adriancarriger
上述代碼適用於添加新對象。但是嘗試使用它也可以通過'currentValue.remove()'去除,但是獲取錯誤currentValue.remove不是函數。我怎樣才能刪除? – alltej