仅在1页内隐藏侧边菜单和导航栏

时间:2016-09-02 08:17:09

标签: ionic-framework ionic2

当我制作hide-nav-bar="true"时,它也使我的侧边栏菜单在我不想要的其他页面中消失。我只想让导航和侧面菜单在主页中消失,但在其他页面中,由于某种原因,我的侧面菜单被替换为后退箭头。我怎么能解决这个问题?

这就是它的外观

enter image description here

这就是它应该如何

enter image description here

我的代码

<ion-view hide-nav-bar="true" title="Home" id="page1">
<ion-content padding="true" class="has-header backg">
 <img class="log" src='../../img/image2.png' alt="HTML5 Icon" style="width:90px;height:90px;">
   </ion-content>
</ion-view>

1 个答案:

答案 0 :(得分:1)

请查看this plunker

  

我只是想让导航和侧面菜单在主页中消失

为了做到这一点,您可以首先避免在视图中包含标题。只需在主页html代码中包含ion-content元素,该视图就不会有导航栏。

<ion-content>
  <p>Home page</p>
  <!-- ... -->
  <!-- ... -->
</ion-content>

即使我们没有显示导航栏,用户也可以通过从左侧切片来打开侧面菜单(在这种情况下),所以我们需要确保避免这样发生:

id 添加到ion-menu元素,如下所示:

<ion-menu [content]="content" side="left" id="menu">
  <ion-toolbar secondary>
    <ion-title>Menu</ion-title>
  </ion-toolbar>

  <ion-content>
    <ion-list>
      <button ion-item menuClose="menu" detail-none>
        Close Menu
      </button>
    </ion-list>
  </ion-content>
</ion-menu>

然后在你的HomePage.ts中禁用它:

import { MenuController, ... } from 'ionic-angular';

@Component({
  templateUrl:"home.html"
})
export class HomePage {

  constructor(private menuCtrl: MenuController, ...) { }

  ionViewDidEnter() {
    this.menuCtrl.enable(false, 'menu');
  }

  // ...
}
  

在其他页面中,我的侧边菜单被替换为某些后退箭头   原因。

与导航阵列有关,以及Ionic2如何处理它。如果您push新页面,则会显示该后退箭头。即使您可以隐藏它,如果应用程序在带有物理后退按钮的Android设备中运行,用户仍然可以返回主页。如果您不想让用户返回主页(因为是登录页面或类似内容),请改用setRoot method

this.nav.setRoot(NewPage);