0

伙计们是否可以在不使用控制器的情况下获得 angularJS 的 $http ajax 功能?

目前我有工厂,我想在那里进行数据库操作:

var Services = angular.module('App.Services', []);

Services.factory('Data', function () {

    var data;

    return {
        get:function (id) {
            return merchants[id];
        },
        getAll:function () {
            $http({method: 'GET', url: '/api/merchants'}).
                success(function(data, status, headers, config) {
                    console.log(arguments);
                }).
                error(function(data, status, headers, config) {
                    console.log(arguments);
                });
            return data.slice(0);
        },
        add:function (_data) {
            _data.id = data.length;
            data.push(_data);
        },
        save:function (_data) {
            merchants[_data.id] = _data;
        },
        remove:function (_data) {
            delete merchants[_data.id];
        }
    }

});

我现在如何使用 $http ?

4

1 回答 1

1

您可以在任何服务中使用任何服务。像这样注入它:

Services.factory('Data', function ($http) {

   // use $http
});
于 2013-02-28T13:59:19.367 回答