有人可以告诉我$routeProvider
与Controller as syntax
一起使用是否合法?我在<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'
});
});
答案 0 :(得分:10)
您无法在
controller
选项中添加controllerAs语法$routeProvider.when
。
您应该使用controllerAs
选项,该选项是以字符串格式获取控制器的别名,&amp; controller
也接受将被视为角度控制器的字符串。
<强>代码强>
$routeProvider.when(APP_BASE_URL + 'kicks', {
reloadOnSearch: false,
navitem: true,
name: 'Kicks',
templateUrl: 'kick/partials/kick.html',
controller: 'KickController'
controllerAs: 'kick' //controller alias taken out from controller option
});
或强>
controller: 'KickController as kick'