离子标签和侧边菜单历史

Posted

技术标签:

【中文标题】离子标签和侧边菜单历史【英文标题】:ionic tabs and side menu history 【发布时间】:2015-03-16 06:15:01 【问题描述】:

我想在侧边菜单应用程序中放置一个选项卡式视图,但只是在应用程序的某些视图中。在一个应用程序中有以下状态结构:

|--- Login                (login: menuContent)
|--- Orders list          (app.orders: menuContent)
    |--- Description      (app.orderTabs.description: orderTabs-description)
    |--- Products         (app.orderTabs.products: orderTabs-products)
         |--- New product (app.orderTabs.products.newProduct: orderTabs-products)
|--- Alerts list          (app.alerts: menuContent)
    |--- Description      (app.alertTabs: alertTabs-description)
    |--- Settings         (app.alertTabs: alertTabs-settings)

作为每个条目 |--- ViewTitle (state: ion-nav-view name)

menu.html:

<ion-side-menus enable-menu-with-back-views="false">
  <ion-side-menu-content>
    <ion-nav-bar class="bar-stable">
      <ion-nav-back-button>
      </ion-nav-back-button>

      <ion-nav-buttons side="left">
        <button class="button button-icon button-clear ion-navicon" menu-toggle="left">
        </button>
      </ion-nav-buttons>      
    </ion-nav-bar>
    <ion-nav-view name="menuContent"></ion-nav-view>
  </ion-side-menu-content>

  <ion-side-menu side="left">
    <ion-header-bar class="bar-stable">
      <h1 class="title">Menu</h1>
    </ion-header-bar>
    <ion-content>
      <ion-list>
        <ion-item nav-clear menu-close href="#/app/orders">
          Orders list
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/alerts">
          Alerts list
        </ion-item>
        <ion-item nav-clear menu-close ng-click="logout()">
          Logout
        </ion-item>
      </ion-list>
    </ion-content>
  </ion-side-menu>
</ion-side-menus>

orderTabs.html:

<ion-tabs class="tabs-icon-top tab-bar">

  <ion-tab title="Order" icon="icon ion-clipboard" href="#/app/orderTabs/ data.order.id /description">
    <ion-nav-view name="orderTabs-description"></ion-nav-view>
  </ion-tab>


  <!-- products Tab -->
  <ion-tab title="Products" icon="icon ion-checkmark-circled" href="#/app/orderTabs/ data.order.id /products" badge="data.badgeProducts" badge-style="badge-assertive">
    <ion-nav-view name="orderTabs-products"></ion-nav-view>
  </ion-tab>

</ion-tabs>

我希望能够从描述或产品返回订单列表,有人知道这是否可能吗?

目前我实现了在 orderTabs 中显示后退按钮,但是在创建 ion-tab 视图时,历史记录被清除。

来自订单控制器列表:

  $scope.goToOrder = function gotToOrder(orderId) 
    $ionicViewSwitcher.nextDirection('forward');
    $ionicHistory.nextViewOptions(
      historyRoot: false
    );
    $state.go('app.orderTabs.order', 
      orderId: orderId
    );
  ;

【问题讨论】:

【参考方案1】:

我遇到了和你一样的问题,经过搜索我发现这实际上是 Ionic 团队故意实施的,因为标签视图本身就有历史记录,所以他们实际上并没有记录有标签的视图历史上根本没有导航。看起来这不会很快得到解决,所以我最终自己创建了修改后的选项卡实现。我基本上模仿选项卡的外观,然后使用 ng-show 控制显示的内容。

<div class="tabs-striped tabs-top">
    <div class="tab-nav tabs">
        <a class="tab-item"
               ng-class="'tab-item-active': tabs.active == 'description'"
               ng-click="tabs.active = 'description'">
            <span>Description</span>
        </a>
        <a class="tab-item"
               ng-class="'tab-item-active': tabs.active == 'pending'"
               ng-click="tabs.active = 'products'">
            <span>Products</span>
        </a>
    </div>
</div>

【讨论】:

以上是关于离子标签和侧边菜单历史的主要内容,如果未能解决你的问题,请参考以下文章

离子侧边菜单错误

如何删除侧面菜单离子2中的下划线

带有嵌套视图的离子侧菜单和选项卡:选项卡嵌套视图的内容未显示

如何在侧面菜单离子 4 中获取数据

无法重定向到菜单离子5

如何在ios中同时实现标签栏和侧边菜单?