基于AngularFire文档,我尝试在对象上设置$priority,然后使用$save()更新Firebase上的数据。
相反,我得到的结果是对象被重写为空(它是Firebase中的条目)。这是我的密码
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();
});发布于 2014-11-04 18:21:14
尝试将优先级直接传递到$add:
myList.$add({
created: Firebase.ServerValue.TIMESTAMP,
user: userId,
$priority: userId
});也没有理由在相同的同步数据上调用$asArray和$asObject (它已经是同步的)。这在您当前的模型中是可行的,但是没有必要:
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:
var ref = new Firebase(firebaseListPath);
ref.push().setWithPriority({ ... }, userId);https://stackoverflow.com/questions/26726608
复制相似问题