[英]ion-nav-back-button is not working with views with parameters
我正在尝试使用ionic-framework和angularJS开发一个应用程序。
我已经使用$ stateProvider和$ urlRouterProvider在视图之间进行导航。 我在页面上有ion-nav-back按钮 ,可导航至历史记录中的上一个视图。
这是我的路由逻辑,
$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");
我的问题是,ion-nav-back-button可以在没有参数的情况下正常工作。 但是,如果我超前具有参数的视图,它将不会再出现在历史视图中。 而是转到默认页面。
例如,如果从“ Relation.html”视图转到以“ id”作为参数的下一个视图,则在下一个视图中,我可以看到后退按钮。 但是,如果我单击该按钮,它将带我到默认页面“ Suggessions.html”,而不是“ Relation.html”。
编辑
$ionicHistory.goBack();
使用$ ionicHistory返回的该代码也不起作用。 这意味着带有参数的视图不会添加到历史记录中。
谁能建议我,该如何处理要在历史记录中添加参数的视图?
在网址参数中仅放置“:id”。 像这样:
.state('sideMenu.relations', {
cache: true,
url: "/:id",
views: {
'contentView': {
templateUrl: "Templates/Relations.html",
controller: "relationCtrl"
}
}
});
从文档http://ionicframework.com/docs/api/directive/ionNavBackButton/
通过自定义内部标记和自定义单击操作,使用$ ionicHistory:
<ion-nav-bar ng-controller="MyCtrl">
<ion-nav-back-button class="button-clear"
ng-click="myGoBack()">
<i class="ion-arrow-left-c"></i> Back
</ion-nav-back-button>
</ion-nav-bar>
控制器代码
function MyCtrl($scope, $ionicHistory) {
$scope.myGoBack = function() {
$ionicHistory.goBack();
};
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.