Javascript 使用firebase获取$add的Angular应用程序不是一个函数

Javascript 使用firebase获取$add的Angular应用程序不是一个函数,javascript,angularjs,firebase,angular-services,Javascript,Angularjs,Firebase,Angular Services,我有一个角度服务: (function(){ "use strict"; angular .module('todoapp') .factory('ListService', ListService); ListService.$inject = ['$firebaseArray']; function ListService($firebaseArray) { var ref = new Firebase('h

我有一个角度服务:

(function(){
    "use strict";

    angular
        .module('todoapp')
        .factory('ListService', ListService);
    ListService.$inject = ['$firebaseArray'];

    function ListService($firebaseArray) {
        var ref = new Firebase('https://---firebase-name---.firebaseio.com/items/'),
        list = $firebaseArray(ref);

        return list;


    }

})();
从控制器调用的

(function () {
"use strict";

angular
    .module('todoapp')
    .controller('ListController', ListController);

ListController.$inject = ['$scope', '$log', 'ListService'];

/* @ngInject */
function ListController($scope, $log, ListService) {

    var listCtrl = this;

    listCtrl.items = ListService;

    listCtrl.add = function(form){

        //ADD TO FIREBASE
        console.log(listCtrl.newList);
        listCtrl.newList.$add(listCtrl.newList);
}
当我触发
listCtrl.add()
时,我得到一个错误:

listCtrl.newList.$add is not a function
现在,我尝试传递的
listCtrl.newList
对象仅包括我尝试更新的firebase对象中包含的节点,但不包括所有节点,我只需要包括正在更改的节点。我不认为对象是问题所在,因为方法
$add
是它出错的地方,而不是它的内部

我还尝试向firebase meothod添加$asArray,如下所示:

list = $firebaseArray(ref).$asArray();
但是没有找到
$asArray

有什么想法吗?

listCtrl.items.$add
而不是
listCtrl.newList.$add
listCtrl.items.$add
而不是
listCtrl.newList.$add
谢谢你的额外一双眼睛。谢谢你的额外一双眼睛。