我们怎么能不将服务注入配置块,但可以解决这个问题呢?

时间:2016-05-13 12:10:16

标签: angularjs dependency-injection angular-ui-router

我基本上都是按照教程进行操作,并希望了解此代码的工作原理。

这是我的服务:

app.factory('postFactory', ['$http', function($http){

  var obj= {
    postList:[]
  };

  obj.getAll= function(){
    return $http.get('/posts').success(function(data){
      angular.copy(data, obj.postList);
    });
  };
  return obj;`enter code here`
}]);

这是决心:

   $stateProvider
    .state('home', {
      url: '/home',
      templateUrl: '/home.html',
      controller: 'MainCtrl',
      resolve: {
        posts: function(postFactory){
        return postFactory.getAll();
        };
   )

resolve在postFactory上调用方法getAll()。我知道在控制器初始化之前,代码已达到解决方案,因此服务也是如此。那么它如何访问该方法呢?此外,正如本问答中所述,AngularJS dependency injection of value inside of module.config

  

模块是配置和运行块的集合,它们在引导过程中应用于应用程序。在最简单的形式中,该模块由两种块的集合组成:

     

配置块 - 在提供程序注册和配置阶段执行。只有提供程序和常量才能注入配置块。这是为了防止服务在完全配置之前意外实例化。

因此,如果我们想要在完全配置服务之前防止意外实例化服务,为什么我们能够在解析中实例化它们?

0 个答案:

没有答案