AngularJS:$ http请求后配置$ routeProvider

时间:2014-08-25 08:25:20

标签: angularjs route-provider

我需要在ajax请求后配置$routeProvider,但我无法在配置中使用$http,这意味着以下代码会导致错误:

module.config(['$routeProvider','$http',function ($routeProvider,$http) {}
无法在控制器中访问

$routeProvider

我需要这种方法来考虑谁可以将哪个页面看作索引页面。

1 个答案:

答案 0 :(得分:2)

您可以将$routeProvider从配置对象传递给控制器​​。例如

在您编写的路径配置文件中

 .when('/', {
                    templateUrl: 'template.html',
                    controller: 'MyController',
                    controllerAs: 'main',
                    resolve: {
                        myRouteConfig: function(){
                            return $routeProvider;
                        }
                    }
                })

在控制器中你可以像依赖一样注入它

function MyController(myRouteConfig) {
   myRouteConfig.when ...... 
}

fiddle

中的工作示例