2015-07-03 212 views
0

當我在處理一個Angular應用程序時,我想知道ui-route嵌套狀態。ui路由器嵌套的子狀態

正如docu說,它可以創建嵌套的狀態,如(取自DOC):

$stateProvider 
    .state('contacts', { 
    templateUrl: 'contacts.html', 
    controller: function($scope){ 
     $scope.contacts = [{ name: 'Alice' }, { name: 'Bob' }]; 
    } 
    }) 
    .state('contacts.list', { 
    templateUrl: 'contacts.list.html' 
    }); 

但是,它可以創建一個granchild狀態? (可能加入類似的東西):

.state('contacts.list.state', { 
    templateUrl: 'html_file.html' 
)} 

回答

1

是的,你可以按照你的建議像那樣做。 EG:

$stateProvider 
    .state('contacts', { 
    url: '/', 
    templateUrl: 'contacts.html', 
    controller: function($scope){ 
     $scope.contacts = [{ name: 'Alice' }, { name: 'Bob' }]; 
    } 
    }) 
    .state('contacts.list', { 
    url: ':list', 
    templateUrl: 'contacts-list.html' 
    }) 
    .state('contacts.list.fullDetails', { 
    url: '/fullDetails', 
    templateUrl: 'contacts-list-full-details.html' 
    }); 
+0

謝謝!我還有另外一個問題(也許我應該在第一個編輯中包含它或者創建一個新的主題)。我想使用具有動態子狀態的父狀態。狀態將是'contact.state'與這個URL'/:state'。由於孫兒狀態是可能的,我認爲在這種情況下應該可以。我是對的嗎? – Arhyaa

+0

@Arhyaa嘿!是的,你可以做這樣的動態URL:'url:'/ contact /:someId'' –

+0

我會嘗試使用它,非常感謝:) – Arhyaa