2015-05-23 15 views
6

TabControl jest widoczny po uruchomieniu aplikacji, ale ...Bądź angularjs ui pracy router z materiału kātowe TABS

Po kliknięciu na zakładkę NO materiał jest widoczny

Czego nie tak?

Używam najnowszego projektu materiału angularJS 0.9.4.

$urlRouterProvider.otherwise(""); 
     $stateProvider 

      .state("main", 
      { 
      abtract: true, 
      url: '', 
      views: { 
       '[email protected]': { 
       templateUrl: '../app/views/administration/administration.html', 
       controller: 'AdministrationController' 
       } 
      } 
      }) 
      .state('main.settings', { 
      url: '/settings', 
      views: { 
       '[email protected]': { 
       templateUrl: "../app/views/administration/settings.html", 
       controller: 'GlobalConfigurationController' 
       } 
      } 
      }) 
      .state('main.schoolyears', { 
      url: '/schoolyears', 
      views: { 
       '[email protected]': { 
       templateUrl: "../app/views/schoolyear/schoolyears.html", 
       controller: 'SchoolyearsController' 
       } 
      } 
      }); 

HTML

<div layout-fill layout="column"> 
    <div ng-include="'app/components/navbar/navbar.html'"></div> 
    <div id="content" layout="column" layout-padding> 

    <md-tabs md-stretch-tabs="always" class="md-primary md-hue-2"> 

     <md-tab label="Schoolyears" ui-sref="main.schoolyears" md-active="$state.is('main.schoolyears')"> 
     <md-tab-body ui-view="schoolyears" layout="vertical" layout-fill></md-tab-body> 
     </md-tab> 

     <md-tab label="settings" ui-sref="main.settings" md-active="$state.is('main.settings')"> 
     <md-tab-body ui-view="settings" layout="vertical" layout-fill></md-tab-body> 
     </md-tab> 

    </md-tabs> 
    </div> 
</div> 
+0

można pisać kod, gdzie jesteś Sourcing kontrolerów z tagu

+0

chcesz kod kontrolerów? Czy wiesz, czy mam włączony kontroler w index.html? – HelloWorld

+0

Chcesz wiedzieć jedno i drugie. –

Odpowiedz

5

Aktualizacja: wykorzystanie ui-sref i md-tabs została ustalona w Kątowymi Materiał 0.10.0

Rozwiązaniem została wysłana na github , na previous known md-tab issue :

Jest plunker z obejścia (wydaje się działać bez widoków):

$stateProvider 
     .state('tabs', { 
     abstract: true, 
     url: '/tabs', 
     templateUrl: 'tabs.html', 
     onEnter: function() { console.log("enter tabs.html"); } }) 

     .state('tabs.tab1', { 
     url: '/tab1', 
     onEnter: function() { console.log("enter tab1.html"); }, 
     controller: function($scope) { 

     }, 
     templateUrl: 'tab1.html' 
     }) 
     .state('tabs.tab2', { 
     url: '/tab2', 
     onEnter: function() { console.log("enter tab2"); }, 
     controller: function($scope) { 

     }, 
     templateUrl: 'tab2.html' 
     }); 
+0

Wiem, że to jest ond pytanie, ale zauważyłem, że jest jeszcze jeden błąd w Twoim Plunkerze. Po naciśnięciu strzałki wstecz w zakładce przeglądarki zmiany zawartości z "tab 2" na "tab 1", ale "tab 2" są nadal zaznaczone (pod "tab 2" jest czerwona linia, gdy zawartość mówi "tab 1"). Czy można to naprawić? – Misiu

+0

Proszę nie używać tego plunkera. Został on wykonany ze starą wersją materiału kątowego, który wymagał obejścia, by grać ładnie z ui-routerem. Tak już nie jest. – LeoLozes

+0

Możesz zobaczyć, że działa poprawnie bez hackowania "span" tutaj: http://plnkr.co/edit/psinbetM1CUBqIxuL1yq – LeoLozes