在Ionic上隐藏按钮

时间:2016-01-06 18:12:21

标签: javascript angularjs cordova ionic-framework ionic

我正在使用ionic创建一个应用程序。

菜单上有一些按钮:消息,设置,帮助和返回。

我希望后退按钮不会出现在仪表板页面上。 谁知道我是怎么做到的?谢谢,

Ps。:我尝试使用离子导航按钮,但遇到了一些问题。

top menu

这是 menu.html

<ion-side-menus enable-menu-with-back-views="false" >
  <ion-side-menu-content>

    <ion-nav-bar class="bar-stable bar-balanced">

      <ion-nav-buttons side="left">
        <a href="#/app/dashboard" style="color: white;" class="button button-icon icon ion-android-arrow-back"></a> 
      </ion-nav-buttons> 

      <ion-nav-buttons side="right">
        <a href="#/app/profiles" style="color: white;" class="button button-icon icon ion-ios-people"></a> 
        <a href="#/app/config" style="color: white;" class="button button-icon icon ion-android-settings"></a> 
        <a href="#/app/help" style="color: white;" class="button button-icon icon ion-help-buoy"></a>
      </ion-nav-buttons>

    </ion-nav-bar>

   <ion-nav-view name="menuContent"></ion-nav-view>

  </ion-side-menu-content>
</ion-side-menus>

这是一个 dashboard.html

<ion-view view-title="">
  <ion-content class="padding">
    <div class="list">

    <div class="row">
        <div class="col">
                <span>Type your message:</span>
              <div class="item-input item-stacked-label">
                <textarea type="text"></textarea>
              </div>
            </div>
        </div>

      <div class="row">
        <div class="col">
                <span>Choose the distance:</span>
            <div class="range range-balanced">
                <input type="range" name="distance" min="1" max="10000" value="1000">
              </div>
            </div>
        </div>

      <div class="row">
        <div class="col">
                <span>Anexar imagem:</span>
                    <button class="button button-balanced button-full">Selecionar</button>
            </div>
        </div>

      <div class="row">
        <div class="col">
                <a class="button button-icon icon ion-chevron-right float-right"></a>
            </div>
        </div>

       </div>
  </ion-content>
</ion-view>

谢谢!

2 个答案:

答案 0 :(得分:0)

如果您只是使用ng-hide =“主页”该怎么办?在主页的控制器中设置$ scope.homepage = true。对于其他页面,它将是未定义的,因此是错误的,因此不会被隐藏。

答案 1 :(得分:0)

不知道这是最好的方式,但它为我工作..!试试这个。!

在与sidemenu相关的控制器中添加:

$scope.$watch(function () {
        return $ionicSideMenuDelegate.getOpenRatio();
    }, function (value) {
        if (($state.$current.name == "app.dashboard")) {
            $scope.hideButton = true;
        }else{
            $scope.hideButton = false;
        }
    });

html:

 <a href="#/app/dashboard" ng-if="hideButton" style="color: white;" class="button button-icon icon ion-android-arrow-back"></a> 

其他方法是..:在特定视图中添加你想要的任何按钮,并从sidemenu html中删除。

<ion-view view-title="">
  <ion-nav-buttons side="right">
    <a href="#/app/profiles" style="color: white;" class="button button-icon icon ion-ios-people"></a> 
    <a href="#/app/config" style="color: white;" class="button button-icon icon ion-android-settings"></a> 
    <a href="#/app/help" style="color: white;" class="button button-icon icon ion-help-buoy"></a>
  </ion-nav-buttons>
   <ion-content class="padding">
   </ion-content>
</ion-view>
希望,它可以帮助某人。!