Передача служб в конфигурацию приложения в angularjs

#angularjs #angularjs-scope

#angularjs #angularjs-область

Вопрос:

Я разрабатываю приложение с angularjs, у меня есть этот фрагмент кода для проверки того, вошел ли пользователь в систему в конце маршрутизаторов, я также определяю функцию в службе, чтобы функция была доступна в наших контроллерах

Вопрос:

Как получить доступ к myFunction из MyService внутри этой функции запуска?

И как выполнить вызов ajax внутри myFunction в MyService? На самом деле я не знаю, как передать параметр $ http в MyService и как передать myFunction из MyService в функцию запуска MyApp.

    MyApp.config(function($routeProvider) {
       $routeProvider
       .when('/fooRoute', {
          templateUrl : 'fooURL',
          controller : 'fooController'
       })
   }).run(function( $rootScope, $location, $templateCache, $http) {
       if (signed_in == false) {
            $location.path("/login");                    
        } else {
           //Here I need to call the function of MyService
        }
  });
  

Это мой сервисный код:

    MyApp.factory('MyService', function() {
    return {           
        myFunction : function() {

           //Here I need to make an ajax call

        }
      };
    });
  

Ответ №1:

 MyApp.factory('MyService', ['$http', function ($http) {
  return {
    myFunction: function () {

      //Here I need to make an ajax call
      $http.get()

    }
  };
}]);
  

// upd

 .run(function($rootScope, $location, $templateCache, $http, MyService) {
    // your code
});
  

Комментарии:

1. и, пожалуйста, как насчет передачи этой службы функции run?