空白项目中的Ionic 4简单选项卡

时间:2018-10-22 23:42:14

标签: angular ionic-framework tabs ionic-tabs

我已经用ionic start myApp blank

创建了一个新项目。

现在,我需要在项目中添加标签,在页面中创建文件夹标签,并在标签tabs.html tabs.ts中创建两个文件 在tabs.html

<ion-tabs>
  <ion-tab [root]="homePage" tabTitle="Home" tabIcon="bulb" ></ion-tab>
  <ion-tab [root]="reclamationsPage" tabTitle="Reclamations" tabIcon="settings"></ion-tab>
</ion-tabs>

在tabs.ts

import { Component } from '@angular/core';
import { ReclamationsPage } from '../reclamations/reclamations';
import { HomePage } from '../home/home';


@Component({
  selector: 'page-tabs',
  templateUrl: 'tabs.html',
})
export class TabsPage {

  reclamationsPage: ReclamationsPage;
  homePage: HomePage;
}

在app.module.ts中 我已经添加

declarations: [
    MyApp,
    HomePage,
    LoginPage,
    ReclamationsPage,
    TabsPage
  ],
  imports: [
    BrowserModule,
    HttpModule,
    HttpClientModule,
    IonicModule.forRoot(MyApp)
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    HomePage,
    LoginPage,
    ReclamationsPage,
    TabsPage
  ],

在app.component.ts中,我用rootPage:any更改了rootPage:any = TabsPage;

但是当我执行我的代码离子服务时,我却注意到屏幕空白页中的图像enter image description here

离子信息

Ionic:

   ionic (Ionic CLI)  : 4.2.1 (C:\Users\android\AppData\Roaming\npm\node_modules\ionic)
   Ionic Framework    : ionic-angular 3.9.2
   @ionic/app-scripts : 3.2.0

Cordova:

   cordova (Cordova CLI) : 8.1.2 (cordova-lib@8.1.1)
   Cordova Platforms     : android 7.1.1
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 2.2.0, (and 8 other plugins)

System:

   Android SDK Tools : 26.1.1 (C:\Users\android\AppData\Local\Android\sdk)
   NodeJS            : v8.12.0 (C:\Program Files\nodejs\node.exe)
   npm               : 6.4.1
   OS                : Windows 10

1 个答案:

答案 0 :(得分:2)

  

tabs.html;

<ion-tabs [selectedIndex]="myIndex">
    <ion-tab [root]="tab1Root" tabIcon="star"></ion-tab>
    <ion-tab [root]="tab2Root" tabIcon="home"></ion-tab>
</ion-tabs>
  

tabs.ts

import { IonicPage, NavController, NavParams } from 'ionic-angular';

@IonicPage()
@Component({
  selector: 'page-tabs',
  templateUrl: 'tabs.html',
})

export class TabsPage{
    tab1Root = 'ReclamationsPage';
    tab2Root = 'HomePage';
    myIndex: number;
}

constructor(public navCtrl: NavController, public navParams: NavParams){
    this.myIndex = navParams.data.tabIndex || 0;
}