我在UI-Router中遇到嵌套状态问题。我有两个状态,按下按钮它应该转换到另一个状态,并且网址会更改,但模板不会。这是我的状态逻辑代码:
$stateProvider.state('accounts', {
url: '/accounts',
views: {
'menu': {
templateUrl: 'templates/menu.html',
controller: 'MenuController'
},
'main': {
templateUrl: 'templates/accounts.html',
controller: 'AccountsController'
}
}
});
$stateProvider.state('accounts.detail', {
url: '/:accountID',
views: {
'main': {
templateUrl: 'templates/accounts.detail.html',
controller: 'AccountsDetailController'
}
}
});
我的按钮逻辑:$state.go('accounts.detail', { accountID : account.accountID});
我的两个观点都包含在ui-view标签中。所有其他根状态都正常工作(/ home,/ orders)但是/ accounts /:accountID不会触发模板加载和转换。任何见解将不胜感激。
答案 0 :(得分:1)
<ion-view />
不等同于<ui-view />
,在Ionic Framework中,它只是插入页眉/页脚栏和内容的容器。
使用<ion-nav-view />
http://ionicframework.com/docs/api/directive/ionNavView/
并在父视图中按名称引用此嵌套视图:<ion-nav-view name="main" />
答案 1 :(得分:0)
我的问题是我没有正确提及我的观点。由于它们是如何嵌套的,我需要使用绝对名称来显示视图。链接的UI路由器文档描述了我的问题。