我有以下路由配置
angular.module('myApp',['ui.router']).config(function($stateProvider, $urlRouterProvider){
console.log('configuring');
$urlRouterProvider.otherwise('/first/second');
$stateProvider
.state('first', {
'url' : '/first',
'template' : 'hello first <div ui-view=""></div>',
controller: function( $state){
console.log($state); // does not print what I expect
}
})
.state('first.second', {
'url' : '/second',
'template': 'hello second',
'params': { 'foo' : 'bar' }
});
});
以plunkr:http://plnkr.co/edit/v33jK5xJkLQlE9dGUPqX?p=preview
的形式提供我希望控制台显示状态first
。
但是,它会打印状态first.second
。
我做错了什么? 我怎样才能得到我想要的状态?
为什么我需要这个?我想在2个嵌套状态中重用相同的控制器,但根据它所属的子状态获得不同的行为。