0
這是我的代碼,用於更新Firebase中的記錄。無法在angularjs中更新Firebase實時數據庫(網頁)
$scope.EditBrand = function(brand) {
var key = brand.id;
var fredNameRef = firebase.database().ref('all-brands/' + key);
fredNameRef.set(brand, function(error) {
if (error) {
alert ('some error')
} else {
alert ('updated')
}
});
}
我檢查了鑰匙,它的未來是正確的。
但是,當調用這個函數時,這是錯誤。
angular.js:12477Error:Firebase.update失敗:第一個參數在路徑/ $$ hashKey中包含無效鍵($$ hashKey)。鍵必須是非空字符串,並且不能包含「。」,「#」,「$」,「/」,「[」或「]」 at Error(native)
我的代碼或邏輯?
我認爲你有一個無效的密鑰/ ID。 $$ $$ hashkey是你的品牌ID嗎?如果是這樣,FIrebase不接受按鍵中的'$'。 – Odonno
@Odonno,我的品牌ID字符串像23,34,45等 –
根據https://groups.google.com/forum/#!topic/angular/pI0IgNHKjxw,您應該創建一個臨時對象以避免由角度生成的字段。因此,在您的方法中添加以下代碼行:'var brandObject = angular.fromJson(angular.toJson(brand));'並在方法的其餘部分使用'brandObject'。 – Odonno