ionic4 子頁面隱藏tabs

碼云Git:Ionic4_Tabs

效果圖GIF:


1.gif

tabs.page.html:


1.png

TabsService.ts:

import { Injectable } from '@angular/core';

@Injectable({
  providedIn: 'root' //這樣就不必再App.module.ts 引入
})

export class TabsService {

  constructor() {
  }

  //顯示Tabs
  showTabs() {
    let elements = document.querySelectorAll(".tab");
    if (elements != null) {
      Object.keys(elements).map((key) => {
        elements[key].style.display = 'flex';
      });
    }
  }

  //隱藏Tabs
  hiddenTabs() {
    let elements = document.querySelectorAll(".tab");
    if (elements != null) {
      Object.keys(elements).map((key) => {
        elements[key].style.display = 'none';
      });
    }
  }
}

app.component.ts:

import { Component } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router';
import { TabsService } from './service/TabsService';
@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.scss']
})
export class AppComponent {
  constructor(private router: Router,private tabsService: TabsService,) {
    this.toggleTabs();
  }
  //監(jiān)聽路由來顯示或隱藏Tabs選項卡
  toggleTabs(){
    this.router.events.subscribe(event => {
      if (event instanceof NavigationEnd) {
        console.log("event.url:" + event.url);
        if(event.url == '/tabs/home' || event.url == '/tabs/recommend' || event.url == '/tabs/find' || event.url == '/tabs/me'){
          this.tabsService.showTabs();
        }else {
          this.tabsService.hiddenTabs();
        }
      } 
    })
  }
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容