离子一个选项卡转到另一个选项卡的子页面无法返回到另一个选项卡

时间:2016-10-12 09:13:14

标签: ionic-framework

离子一个选项卡转到另一个选项卡的子页面无法返回到另一个选项卡

问题:当我第一次进入状态'tab.home'时,有一个按钮可以进入州'tab.home'页面的'tab.settings.sub'状态,然后点击按钮进入状态' tab.setting.sub'但我不能回到'tab.setting'状态。

<ion-nav-bar>
    <ion-nav-back-button></ion-nav-back-button>
  </ion-nav-bar>
  
  <ion-nav-view></ion-nav-view>

  <script id="templates/tabs.html" type="text/ng-template">
    <ion-tabs>
      <ion-tab title="home" ui-sref="tabs.home">
        <ion-nav-view name="home-tab"></ion-nav-view>
      </ion-tab>
      <ion-tab title="settings" ui-sref="tabs.settings.index">
        <ion-nav-view name="settings-tab"></ion-nav-view>
      </ion-tab>
    </ion-tabs>
  </script>
  
  <script id="templates/home.html" type="text/ng-template">
    <ion-view view-title="home">
      <ion-content>
        <button class="button" ng-click="home.goSub()">settings/sub</ion-item>
      </ion-content>
    </ion-view>
  </script>

  <script id="templates/settings.html" type="text/ng-template">
    <ion-view view-title="settings">
      <ion-content>
        <ion-item ui-sref="tabs.settings.sub">settings/sub</ion-item>
      </ion-content>
    </ion-view>
  </script>
  
  <script id="templates/sub.html" type="text/ng-template">
    <ion-view view-title="settings/sub">
      <ion-content>
        welcome to settings/sub
      </ion-content>
    </ion-view>
  </script>

http://codepen.io/piwinux/pen/BNYXKd

中的问题

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

好的,这里的问题是你没有宣布你的&#34; Home&#34;标签摘要及其MyConfig.js中的子状态。为了在您的&#34; Home&#34;中实现导航选项卡你必须使用与'#34;设置&#34;相同的模式。标签:

  • tabs.home 状态,abstract: truetemplate: '<ion-nav-view></ion-nav-view>'在选项卡中导航。

  • tab.home.index 您的&#34; Home&#34;的初始路线标签为templateUrl: 'templates/home.html'

  • tab.home.nextRoute ,用于&#34; Home&#34;在$state.go ('tabs.home.sub');中使用$state.go ('tabs.settings.sub');代替HomeCtrl的标签可以访问它。

    .state ('tabs', { abstract: true, url: '/tab', templateUrl: 'templates/tabs.html' }) .state ('tabs.home', { abstract: true, url: '/home', views: { 'home-tab': { template: '<ion-nav-view></ion-nav-view>', controller: 'HomeCtrl as home' } } }).state ('tabs.home.index', { url: '', templateUrl: 'templates/home.html' }) .state ('tabs.home.sub', { url: '/sub', templateUrl: 'templates/sub.html' })