SideMenu和Tabs

时间:2016-05-31 08:29:03

标签: ionic-framework tabs

我正在尝试使用Sidemenu和Tabs创建一个应用程序。请在以下链接中查看我的代码。

http://codepen.io/ccrash/pen/WxbeOR

我的问题是,在我启动应用程序后,我可以单击两个选项卡,内容也会相应更改。当我在侧面菜单中单击配置文件时,将显示配置文件页面。但是现在,当我再次尝试单击任一选项卡时,配置文件页面似乎显示在选项卡内容的顶部或者甚至不起作用。有人可以帮忙吗?

HTML代码

HTML
<html ng-app="ionicApp">

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">

  <title>Tabs Example</title>

  <link href="//code.ionicframework.com/nightly/css/ionic.css" rel="stylesheet">
  <script src="//code.ionicframework.com/nightly/js/ionic.bundle.js"></script>
</head>

<body>

  <ion-nav-bar class="bar-positive">
    <ion-nav-back-button>
    </ion-nav-back-button>
  </ion-nav-bar>

  <ion-nav-view></ion-nav-view>


  <script id="templates/menu.html" type="text/ng-template">
    <ion-side-menus enable-menu-with-back-views="false">
      <ion-side-menu-content>

        <ion-nav-bar>
          <!-- <ion-nav-bar class="bar bar-header bar-positive"> -->
          <!-- <ion-nav-bar class="bar-stable"> -->
          <ion-nav-back-button>
          </ion-nav-back-button>

          <ion-nav-buttons side="left">
            <button class="button button-icon ion-navicon" menu-toggle="left">
        </button>
          </ion-nav-buttons>
        </ion-nav-bar>

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

          <ion-tab title="Latest" icon-off="ion-ios-chatboxes-outline" icon-on="ion-ios-chatboxes" href="#/app/latest">
            <ion-nav-view name="tab-latest"></ion-nav-view>
          </ion-tab>

          <ion-tab title="Market" icon-off="ion-ios-cart-outline" icon-on="ion-ios-cart" href="#/app/market">
            <ion-nav-view name="tab-market"></ion-nav-view>
          </ion-tab>
        </ion-tabs>
        <ion-nav-view name="menuContent"></ion-nav-view>
      </ion-side-menu-content>

        <ion-header-bar>
        </ion-header-bar>

        <ion-content has-header="true">

          <ion-list>
            <ion-item menu-close href="#/app/profile">
              <i class="icon ion-person" style="font-size:15px;margin-right:10px;"></i> My Profile
            </ion-item>
            <ion-item menu-close href="#/app/logout">
              <i class="icon ion-log-out" style="font-size:15px;margin-right:10px;"></i> Logout
            </ion-item>
          </ion-list>
        </ion-content>
      </ion-side-menu>
    </ion-side-menus>
  </script>

  <script id="templates/latest.html" type="text/ng-template">
    <ion-view view-title="Latest News">
      <ion-content>

        <div class="list card">
          <div class="item item-body">
            Latest News
          </div>
      </ion-content>
    </ion-view>
  </script>

  <script id="templates/market.html" type="text/ng-template">
    <ion-view view-title="Market">
      <ion-content>
        Market
      </ion-content>
    </ion-view>

  </script>

  <script id="templates/profile.html" type="text/ng-template">
    <ion-view view-title="Profile">
      <ion-content>
        My Profile
      </ion-content>
    </ion-view>

  </script>

</body>

</html>

JS

angular.module('ionicApp', ['ionic'])

.config(function($stateProvider, $urlRouterProvider, $ionicConfigProvider) {
  $ionicConfigProvider.tabs.position('bottom');
  $stateProvider

    .state('app', {
    url: "/app",
    abstract: true,
    templateUrl: "templates/menu.html",
    controller: 'AppCtrl'
  })

  .state('app.latest', {
    url: "/latest",
    views: {
      'tab-latest': {
        templateUrl: "templates/latest.html"
      }
    }
  })

  .state('app.market', {
    url: "/market",
    views: {
      'tab-market': {
        templateUrl: "templates/market.html"
      }
    }
  })

  .state('app.profile', {
    url: '/profile',
    views: {
      'menuContent': {
        templateUrl: 'templates/profile.html'
      }
    }
  })
  $urlRouterProvider.otherwise("/app/latest");

})

.controller('AppCtrl', function($scope, $ionicModal, $timeout) {});

0 个答案:

没有答案