这是AngularJS的服务

时间:2014-02-21 08:09:22

标签: angularjs-scope angularjs-service

我的服务不起作用。我不确定它是否正确。 我希望该服务在应用运行时添加项目,以及它们用于添加另一个textbox的其他功能,但百万问题是结构是否合适?

Services.factory('ItemsService', function() {
    var Items = [{id: 1}, {id: 2}, {id: 3}];

return{

    addNewItem:function() {
        var newItemNo = Items.length+1;
        Items.push({'id':newItemNo});
    },

    showAddItem :function(Item) {
        return Item.id === Items[Items.length-1].id;
    }

};
});

1 个答案:

答案 0 :(得分:1)

这就是我们写角度服务的方式

// make sure you know the differences between service and factory
// you most likely going to want a service for this situation
angular.module('moduleName').service('itemService', function(){

    var items = [{id: 1}, {id: 2}, {id: 3}];

    var addNewItem = function() { 
        var newItemNo= items.length + 1;
        items.push({'id':newItemNo});
    };

    var showAddItem = function(Item) {
        return Item.id === items[items.length-1].id;
    };

    // revealing module pattern
    return {
        Items: items,
        AddNewItem: addNewItem,
        ShowAddItem: showAddItem
    };

});