加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-17 08:07:33 所属栏目:安全 来源:网络整理
导读:我最近开始学习AngularJS Firebase。我试图在我的firebase写一个这样的对象: { title: "Personal Information",say: [ [{ "eng": "What's","ukr": "Що ?" },{ "eng": "your","ukr": "тво?" },{ "eng": "surname?","ukr": "пр?звище?" }],[{ "en
我最近开始学习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)))来解决这个问题。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读