首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用$priority和$save覆盖对象的Firebase $save

使用$priority和$save覆盖对象的Firebase $save
EN

Stack Overflow用户
提问于 2014-11-04 02:08:39
回答 1查看 652关注 0票数 0

基于AngularFire文档,我尝试在对象上设置$priority,然后使用$save()更新Firebase上的数据。

相反,我得到的结果是对象被重写为空(它是Firebase中的条目)。这是我的密码

代码语言:javascript
复制
    var ref = new Firebase(firebaseListPath);
    var myList = $firebase(ref).$asArray();

    myList.$add({
      created: Firebase.ServerValue.TIMESTAMP,
      user: userId
    }).then(function(newItemRef){
      var newItemObj = $firebase(newItemRef).$asObject();
      newItemObj.$priority = userId;
      newItemObj .$save();
    });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-04 18:21:14

尝试将优先级直接传递到$add:

代码语言:javascript
复制
myList.$add({
   created: Firebase.ServerValue.TIMESTAMP,
   user: userId,
   $priority: userId
});

也没有理由在相同的同步数据上调用$asArray和$asObject (它已经是同步的)。这在您当前的模型中是可行的,但是没有必要:

代码语言:javascript
复制
myList.$add({
  created: Firebase.ServerValue.TIMESTAMP,
  user: userId
}).then(function(newItemRef){
  var item = myList.$getRecord(newItemRef.name());
  item.$priority = userId;
  myList.$save(item);
});

但是,没有理由在这里使用AngularFire。如果没有将任何内容绑定到视图,那么只需直接调用ref:

代码语言:javascript
复制
var ref = new Firebase(firebaseListPath);
ref.push().setWithPriority({ ... }, userId);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26726608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档