我正在尝试使用离子框架和angularJS开发应用程序 .
我使用$ stateProvider和$ urlRouterProvider在视图中导航 . 我在页面上有 ion-nav-back-button ,导航到历史记录中的上一个视图 .
这是我的路由逻辑,
$stateProvider
.state('sideMenu', {
url: "/SideMenu",
abstract: true,
templateUrl: "Templates/SideMenu.html",
controller: 'homeCtrl'
})
.state('sideMenu.relations', {
cache: true,
url: "/Relations/:id",
views: {
'contentView': {
templateUrl: "Templates/Relations.html",
controller: "relationCtrl"
}
}
});
//only required navigation is shown here
$urlRouterProvider.otherwise("/SideMenu/Suggestions");
我的问题是,离子导航后退按钮适用于没有参数的视图 . 但是,如果我在具有参数的视图之前,它将不会返回到历史记录中的视图 . 而是转到默认页面 .
例如,如果从“Relation.html”视图转到下一个视图,其中“id”作为参数,在下一个视图中我可以看到后退按钮 . 但如果我点击该按钮,它会将我带到默认页面“Suggessions.html”而不是“Relation.html” .
EDIT
$ionicHistory.goBack();
使用$ ionicHistory返回的代码也不起作用 . 这意味着参数未添加到历史记录中的视图 .
任何人都可以建议我,我应该怎么处理历史中添加参数的视图?
2 回答
在url param中只放置“:id” . 像这样:
来自文档http://ionicframework.com/docs/api/directive/ionNavBackButton/
使用自定义内部标记和自定义单击操作,使用$ ionicHistory:
控制器代码