0

假设我有一个外部 API URL,如http://something.com/name/age/gender,其中“name”、“age”和“gender”是参数。

由于我需要从我的 Angular 1 应用程序中检索该数据,我创建了一个 .service,它应该使用 $http 来获取它。但是......这样的服务需要从控制器调用,并且需要接收参数。

如何设置所有这些以及如何从控制器调用它?

我在服务中唯一拥有的是:

export const SearchPersonService = ($http) => {

    'ngInject';
    return $http.get('someUrl');



};

控制器的代码如下:

SearchPersonService.success(
    data => this.persons = data


).error(
    error => alert('err')
);
4

1 回答 1

0

解决了!我唯一要做的就是将 $http 对象包装到一个接受必要参数的函数中:

export const SearchPersonService = ($http) => {

    'ngInject';

    return function(params){   
        return $http.get('http://someurl/'+
            params.name+'/'+params.age+'/'+
            params.gender+'/'+params.status
        );
    }
};
于 2017-12-17T10:21:44.280 回答