1

我正在使用 Ionic 示例中内置的幻灯片菜单。当我从任何页面(使用 $location 或 $state.go)重定向到主页时,菜单被禁用。它不能再显示了。

$state.go('app.home');
$location.path('/#/app/home');

知道发生了什么吗?

这是菜单模板

<ion-side-menus>

    <ion-side-menu-content drag-content="true">
        <ion-nav-bar class="bar-dark">
            <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-light">
        <h1 class="title">Title</h1>
        </ion-header-bar>
        <ion-content>
            <ion-list>
                <ion-item menu-close href="#/app/login">
                    Login
                </ion-item>
                <ion-item menu-close href="#/app/account">
                    Account
                </ion-item>
                <ion-item menu-close href="#/app/logout">
                    Logout
                </ion-item>
            </ion-list>
        </ion-content>
    </ion-side-menu>

</ion-side-menus>

这是应用程序的配置

$stateProvider

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

        .state('app.home', {
            url: "/home",
            views: {
                'menuContent@app': {
                    templateUrl: "modules/home/views/home.html",
                    controller: 'HomeCtrl'
                }
            }
        });

$urlRouterProvider.otherwise('/app/home');
4

2 回答 2

8

在这里回答当我在控制器中使用 state.go 时,离子幻灯片菜单不会出现

我忘了使用enable-menu-with-back-views="true"我的选项<ion-side-menus>

于 2015-08-18T08:47:50.623 回答
0
    .state('login', {
      url: "/login",
      templateUrl: "templates/login.html",
      controller: 'AppCtrl'
    })

    .state('app', {
      url: "/app",
      abstract: true,
      templateUrl: "templates/menu.html",
      controller: 'AppCtrl',
      onEnter: function($state, Auth) {
        if (!Auth.isLoggedIn()) {
          $state.go('login');
        }
      }
    })

   .state('app.Propertylist', {
      url: "/Propertylist",
      views: {
        'menuContent': {
          templateUrl: "templates/Propertylist.html",
          controller: 'PropertyCtrl',
          onEnter: function($state, Auth) {
            if (!Auth.isLoggedIn()) {
              $state.go('login');
            }
          }
        }
      }
    })`enter code here`
于 2015-08-12T13:51:34.477 回答