ionic 跳转(进入)二级页面隐藏Tab,无再进入第三季页面,TAB出现BUG

本文最后更新于:2016年11月30日 晚上

1.ion-view

ion-view 加上 hide-tabs 指令

1
2
3
<ion-view hide-tabs>
..
</ion-view>

2.在JS中加入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
.directive('hideTabs', function ($rootScope, $location) {
var style = angular.element('<style>').html(
'.has-tabs.no-tabs:not(.has-tabs-top) { bottom: 0; }\n' +
'.no-tabs.has-tabs-top { top: 44px; }');
document.body.appendChild(style[0]);
return {
restrict: 'A',
link: function (scope, element, attributes) {
var tabBar = document.querySelector('.tab-nav');
var scroll = element[0].querySelector('.scroll-content');
scope.$on('$ionicView.beforeEnter', function () {
scope.$watch(attributes.hideTabs, function (value) {
tabBar.classList.add('slide-away');
scroll.classList.add('no-tabs');
});
});
scope.$on('$ionicView.afterLeave', function () {
if ($location.path() == '/tab/aa_against' || $location.path() == '/tab/sf_against' || $location.path() == '/tab/yuding' || $location.path() == '/tab/mine') {
tabBar.classList.remove('slide-away');
scroll.classList.remove('no-tabs');
}
});
}
};
});

> PS:

1
scope.$on('$ionicView.afterLeave', function () {}) 

加入

1
if ($location.path()===···){}

判断是否为第一级页面,是才remove隐藏 class ,其他页面始终隐藏。


ionic 跳转(进入)二级页面隐藏Tab,无再进入第三季页面,TAB出现BUG
https://www.zwjay.cn/2016/11/29/2016-11-30-ionic-jump (into)-the-secondary-hidden-Tab-page/
作者
Mr.Jaxson
发布于
2016年11月29日
许可协议