我提供了扩展$ firebaseArray的服务。这个工作原理如下我调用数组:
vm.customers = new firebaseExtends(firebaseService.customers);
这是工厂:
(function(){
'use strict';
angular
.module('100hh')
.factory('firebaseExtends', firebaseExtends);
firebaseExtends.$inject = ['$firebaseArray'];
function firebaseExtends($firebaseArray){
return $firebaseArray.$extend({
reset: function(itemOrIndex) {
var key, self;
self = this;
key = self.$keyAt(itemOrIndex);
self.$ref().child(key).once('value', function(snap) {
self.$$updated(snap);
});
}
});
};
})();
这很棒。但我想在工厂增加更多延伸,但我不明白为什么这不起作用?
这是工厂:
(function(){
'use strict';
angular
.module('100hh')
.factory('firebaseExtends', firebaseExtends);
firebaseExtends.$inject = ['$firebaseArray'];
function firebaseExtends($firebaseArray){
var service = {
withReset: withReset
};
function withReset(){
return $firebaseArray.$extend({
reset: function(itemOrIndex) {
var key, self;
self = this;
key = self.$keyAt(itemOrIndex);
self.$ref().child(key).once('value', function(snap) {
self.$$updated(snap);
});
}
});
};
return service;
};
})();
这就是我试图称之为的方式,我根本无法理解我所缺少的东西。可能很简单,但任何人都可以提供帮助。
vm.customers = new firebaseExtends.withReset(firebaseService.customers);
答案 0 :(得分:0)
试试这个:
var service = {
withReset: withReset()
};