angularjs – Firebase.push失败:第一个参数包含一个无效的键($$hashKey)

前端之家收集整理的这篇文章主要介绍了angularjs – Firebase.push失败:第一个参数包含一个无效的键($$hashKey)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近开始学习AngularJS Firebase。我试图在我的firebase写一个这样的对象:
{
    title: "Personal Information",say: [
        [{ "eng": "What's","ukr": "Що є" },{ "eng": "your","ukr": "твоє" },{ "eng": "surname?","ukr": "прізвище?" }],[{ "eng": "Smith","ukr": "Сміт" }],[{ "eng": "What's",{ "eng": "first","ukr": "перше" },{ "eng": "name?","ukr": "ім'я?(не фамілія)" }]
    ]
}

与线:

lessondata.add($scope.topic);

其中’lessondata’是使用angularFireCollection()和$ scope.topic – 绑定到我的UI的对象创建的服务。
但是出现以下错误
Firebase.push失败:第一个参数在属性’say.0.0’中包含无效的键($$ hashKey)。键必须是非空字符串,不能包含“。”,“#”,“$”,“/”,“[”或“]”

据了解,Firebase不允许使用0作为键,即使它是附加数组中的一个键,零键是自然的。那么我应该在一些硬编码的实例中改变我的对象结构,还是想念某些东西?提前致谢!

编辑:Anant在评论中指出,在最新的Angular版本(1.0.7 atm)中,您可以使用angular.copy(obj)来删除$$ hashkey属性

像迈克尔所说,’$$ hashKey’中的’$’是这个问题。 Angular会在幕后创建$$ hashKey属性(请参阅这里:https://groups.google.com/forum/#!topic/angular/pI0IgNHKjxw)。我通过做一些类似myRef.push(angular.fromJson(angular.toJson(myAngularObject)))来解决这个问题。

原文链接:https://www.f2er.com/angularjs/144204.html

猜你在找的Angularjs相关文章