9

次のような角度でカスタム http サービスを定義しました。

angular.module('myApp')
  .factory('myhttpserv', function ($http) {

  var url = "http://my.ip.address/"

  var http = {
      async: function (webService) {
          var promise = $http.get(url + webService, { cache: true }).then(function (response) {
            return response.data;
        });
          return promise;
       }
  };
  return http;
});

そして、次のようにコントローラーでこのサービスにアクセスできます。

angular.module('myApp')
  .controller('myCtrl', function (myhttpserv) {

  var webService = 'getUser?u=3'

  myhttpserv.async(webService).then(function (data) {
      console.log(data);
  })

});

ただし、このプロセスを合理化して、静的 URL を使用してサービス内にすべて含まれ、単にデータを返すようにする必要があります。そのため、コントローラーで次のように呼び出すことができます。

 angular.module('myApp')
  .controller('myCtrl', function ($scope, myhttpserv) {

      console.log(myhttpserv.var1);
      console.log(myhttpserv.var2);
      etc...

});

この機能を得るためにサービスを微調整することはできないようです。誰でもそれを行う正しい方法を知っていますか?

4

1 に答える 1