angularfire,remove方法返回'无效记录;找不到关键',它应该发生什么?

时间:2014-09-24 22:51:42

标签: firebase angularfire

我目前正在使用angularjs和firebase开发一个webapp,而我能够保存新记录,我无法使用someReference删除记录。$ remove(varkey); 承诺返回:'无效记录;找不到钥匙'但是相同的参考文献能够正常保存项目。 我修改了varkey上的空格,但似乎都失败了,我使用了bower依赖,版本是" angularfire":" ~0.8.0"根据bower.json的说法

到目前为止,我的服务代码是:

var testRef        = new Firebase('https://test-list.firebaseio-demo.com/list'),
testRefArr     = $firebase(testRef).$asArray();

console.log(testRefArr);
var testpromise = testRefArr.$remove('-JXdmpQbeCAEBl7I3YVO');
testpromise.then(function (response) {console.log(response);}, function (error) {console.log('err: '+error);});

这是这篇文章的演示基础:AngularJS with AngularFire 0.5.0 - $remove item doesn't work 但他们似乎使用的是0.5.0版,我使用的是0.8.0。 有什么想法吗?

1 个答案:

答案 0 :(得分:7)

AngularFireArray.$remove方法接受项目或索引,它不接受id。

因此,要删除您知道该ID的项目,您必须先查看该项目:

testRefArr.$remove(testRefArr.$getRecord('-JXdmpQbeCAEBl7I3YVO'))