使用侧边菜单和标签时,我遇到了离子及其历史堆栈的麻烦.
我在这里创建了一个plunker示例:http://embed.plnkr.co/XK6seY9mDypTW6GcsCpj/preview
要解决问题的步骤:
问题是离子本身在导航中没有显示后退按钮.我创建了一个自己的后退按钮,调用$ ionicGoBack($ event)来查看离子是否具有历史堆栈.但是当单击此按钮时,您将看到离子不会导航回主列表,而是保留在详细信息页面的常规数据选项卡上.
谁能告诉我这是什么问题?我知道标签有自己的历史堆栈,但标签应该知道它的祖先,还是我错了?
非常感谢您的帮助!
最好的祝福
小智 7
这是由于菜单关闭指令把历史堆栈(如解释的事实在这里).
如果从元素中删除"menu-close",则会保留历史记录,但会丢失一些预期的行为.
作为一种解决方案,您可以开发自己的指令(比如说"menu-close-keep-history")来替换"菜单关闭"指令.
myModule.directive('menuCloseKeepHistory', ['$ionicHistory', function($ionicHistory) {
return {
restrict: 'AC',
link: function($scope, $element) {
$element.bind('click', function() {
var sideMenuCtrl = $element.inheritedData('$ionSideMenusController');
if (sideMenuCtrl) {
$ionicHistory.nextViewOptions({
historyRoot: false,
disableAnimate: true,
expire: 300
});
sideMenuCtrl.close();
}
});
}
};
}]);
Run Code Online (Sandbox Code Playgroud)
这应该可以解决问题.
归档时间: |
|
查看次数: |
4742 次 |
最近记录: |