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