任何人都可以告诉我使用带有Controller的$routeProvider作为语法是否有效?我在访问< h1> {{kickController.foo}}< / h1>时遇到问题来自this.foo所在的控制器.
angular.module('ucp.kick',['ngRoute']).config(function($routeProvider,APP_BASE_URL) { return $routeProvider.when(APP_BASE_URL + 'kicks',{ reloadOnSearch: false,navitem: true,name: 'Kicks',templateUrl: 'kick/partials/kick.html',controller: 'kick as KickController' }); });
解决方法
You could not add controllerAs Syntax in
controller
option of$routeProvider.when
.
您应该使用controllerAs选项,该选项是以字符串格式获取控制器的别名,&控制器也接受将被视为角度控制器的字符串.
码
$routeProvider.when(APP_BASE_URL + 'kicks',controller: 'KickController' controllerAs: 'kick' //controller alias taken out from controller option });
要么
controller: 'KickController as kick'