在将路由解析参数用作绑定到该路由的控制器中的依赖项注入时,由于名称
aname不存在的服务提供程序,因此不能将该控制器与ng-
controller指令一起使用。当路由器在其各自的局部视图中实例化要绑定的控制器时,将注入动态依赖项。
还要记住要
$timeout在示例中返回,因为它返回了一个promise,否则您的参数将被解析为没有值,如果您使用的是
$http其他服务或其他返回promise的服务,情况也是如此。
即
resolve: { auser: ['$timeout', function($timeout) { return $timeout(function() { return {name:'me'} }, 1000); }],在控制器中注入resolve依赖项。
appControllers.controller('AppCtrl', AppCtrl);AppCtrl.$inject = ['$scope', '$rootScope','auser']; //Inject auser herefunction AppCtrl($scope, $rootScope, auser) { var vm = this; vm.user = auser;}在视图中而不是ng-controller中,使用
ui-view指令:
<div ui-view></div>
演示版



