2017-05-11 3 views
0

Der Versuch, die folgende URL-Struktur an die Arbeit:ui-Router Kind Ansichten nicht-Controller ausgeführt

/page/ 
/page/article 
/page/article/third-level-1 
/page/article/third-level-2 

Ive versucht, die folgen aber nicht die Artikelansicht überhaupt machen. Die Seitenansicht macht fein:

<section ui-view></section> 

$stateProvider 
    .state('index', { 
    external: true, 
    url: '/' 
    }) 
    .state('page', { 
    url: '/page', 
    controller: Controller, 
    controllerAs: 'ctrl', 
    templateUrl: '/static/views/page/page.html', 
    }) 
    .state('page.article', { 
    url: '/article/', 
    controller: Controller, 
    controllerAs: 'ctrl', 
    templateUrl: '/static/views/page/page-article.html' 
    }); 

ich alles unter der Sonne dann versucht, und es geschafft, die zweite Ansicht erhalten mit der folgenden zu machen, aber der Controller-doesnt laufen auf der Artikelansicht:

<section ui-view="app"></section> 

$stateProvider 
    .state('index', { 
    external: true, 
    url: '/' 
    }) 
    .state('page', { 
    url: '/page', 
    views: { 
     'app': { 
     controller: Controller, 
     controllerAs: 'ctrl', 
     templateUrl: '/static/views/page/page.html', 
     } 
    } 
    }) 
    .state('page.article', { 
    url: '/article/', 
    views: { 
     '[email protected]': { 
     controller: Controller, 
     controllerAs: 'ctrl', 
     templateUrl: '/static/views/page/page-article.html', 
     } 
    } 
    }); 

Wie kann ich die untergeordnete Ansicht dazu bringen, den/a-Controller zu rendern und zu verwenden? Ich bin noch nicht einmal auf das dritte Level gekommen.

Antwort

0

Es sollte dies sein.

.state('page.article', { 
url: '/page/article/', 
views: { 
    '[email protected]': { 
    controller: Controller, 
    controllerAs: 'ctrl', 
    templateUrl: '/static/views/page/page-article.html', 
    } 
} 
Verwandte Themen