2016-02-25 2 views
1

У меня есть две вкладки. По умолчанию показана одна вкладка. При нажатии кнопки на одной вкладке я хочу перенаправить на другую вкладку. Но как мне перенаправить?Как перенаправить на другую вкладку в том же состоянии?

При нажатии кнопки, как мне перемещаться с tab1 на tab2, учитывая тот факт, что все это происходит внутри одного состояния?

<ion-view> 
<ion-header-bar class="musiclist"> 
     <h1 class="title" >Playlist</h1> 
</ion-header-bar> 
    <ion-pane> 
     <ion-tabs class="tabs-top"> 
      <!-- Tab 1 --> 
      <ion-tab title="My Albums"> 
       <ion-nav-view > 
        <ion-content> 
         <!-- some content --> 
        </ion-content> 
       </ion-nav-view> 
      </ion-tab> 
      <!-- Tab 2 --> 
      <ion-tab title="Album Store"> 
       <ion-nav-view > 
        <ion-content> 
         <!-- some content --> 
        </ion-content> 
       </ion-nav-view> 
      </ion-tab> 
     </ion-tabs> 
    </ion-pane> 
</ion-content> 
</ion-view> 

http://codepen.io/anon/pen/JXPyLE

ответ

2

Вы можете использовать $ionicTabsDelegate.select пропускание услуги $ ionicTabsDelegate в контроллер и вызвав выберите функцию. Поскольку у вас есть более чем один набор вкладок, вам необходимо указать делегат обрабатывать в вашем HTML и ссылки, что конкретная ручка контроллера:

.controller('HomeTabCtrl', function($scope, $ionicTabsDelegate) { 
console.log('HomeTabCtrl'); 
$scope.store = false; 

$scope.switchTabs = function(index) { 
    $ionicTabsDelegate.$getByHandle('my-handle').select(index); 
} 
}); 

<ion-tabs delegate-handle="my-handle" class="tabs-top"> 
    <!-- Tab 1 --> 
    <ion-tab title="My Albums" > 
     <ion-nav-view ng-show="store"> 
     <ion-content> 
      <!-- some content -->A 
      <a ng-click="switchTabs(1)">go to store</a> 
     </ion-content> 
     </ion-nav-view> 
    </ion-tab> 
+1

Perfectoo !! Thx человек. Хотя я не назначил какую-либо ручку. Просто инъекция dependecy и '$ ionicTabsDelegate.select (1)'; –

+0

Gotcha, я не пробовал это без делегата, поскольку это было в документе: «Методы, вызываемые непосредственно в службе $ ionicTabsDelegate, будут контролировать все директивы ionTabs. Используйте метод $ getByHandle для управления конкретными экземплярами onTabs.» ... так Я решил, что он переключит внешний набор вкладок. –

Смежные вопросы