如何将url作为参数传递给Angular js中服务中的ajax方法

时间:2015-12-11 03:36:53

标签: javascript angularjs angular-services

我打算为ajax调用提供单独的服务。我试图从另一个服务调用该服务,但我希望通过参数将URL传递给该方法。

这是我的代码:

angular.module("Data", []).service("DataService", function ($http) {
    return {
        Data: function (callback) {
            $http.get('http://www.w3schools.com/angular/customers.php').success(callback);
        }
    }
})

angular.module("Home", ["Data"]).service("HomeService", function (DataService) {
    var customerData = {}
    return {
        Getdata: DataService.getCustomers(function (results) {
            customerData = results;
            console.log(customerData)
        })
    }
})

我不想对我的网址进行硬编码。相反,我希望它作为参数传递。

1 个答案:

答案 0 :(得分:1)

基本上,将网址传递给您的服务方法。

  angular.module("Data", []).service("DataService", function ($http) {


        return {
            getCustomers: function (url, callback) {
                $http.get(url).success(callback);
            }
        }
    })


angular.module("Home", ["Data"]).service("HomeService", function (DataService) {

        var customerData = {}

        return {
            Getdata: DataService.getCustomers('http://www.w3schools.com/angular/customers.php', function (results) {
                customerData = results;
                console.log(customerData)
            })

        }
    })