谁能告诉我将$routeProvider
与Controller as syntax
一起使用是否有效?我在从<h1>{{kickController.foo}}</h1>
所在的 Controller 访问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
选项,该选项用于以字符串格式获取 Controller 的别名,并且controller
也接受将被视为angular 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'
Doc Link
关于angularjs - Angular $ routeProvider和 Controller 作为语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30877971/