解析是路由的属性,而不是控制器的属性。控制器将注入在路由级别上定义的依赖项,而无需在控制器上指定解析属性。
以您的一个示例(转换为Javascript)为例,您将像往常一样定义控制器,即:
MyCtrl1 = function($scope, $http, batman, title) { $scope.batman = batman.data; $scope.title = title.data;}然后是路线上的resolve属性:
angular.module('app', []).config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { $locationProvider.html5Mode(true) $routeProvider.when('/',{templateUrl: 'index.html', controller: MyCtrl1, resolve: { batman: ['$http', function($http) { return $http.get(..).then(function(response){ return response.data; }); }], title: ['$http', function($http) { return //as above }] }}); $routeProvider.otherwise({redirectTo: '/'});}]);如果您想使用路由的resolve部分来减少代码,则需要使用数组样式的注释-我已在上面的示例中添加了注释。



