我正在使用ui路由器構建應用程序的大綱。我已經定義了這些國家,它似乎有效,但我不禁覺得在最佳實踐方面可能會有更好的方式。AngularJS,ui路由器,嵌套狀態
我的狀態:
- 「主」是一個頁眉,頁腳一個抽象的狀態,中間內容區域。
- 'main.home'是默認出現的。內容文件'home.tpl.html'是一種帶有srefs到應用程序其他區域的啓動頁面,如'main.wizard.step1'。
- 'main.wizard'是一個表示多步信息收集嚮導的抽象狀態。
- 「main.wizard.step1」,「main.wizard.step2」是在嚮導
步驟是什麼,我懷疑是我使用的「@」,「若干意見」爲對象的值和「」。這看起來合理嗎?還是你會做別的事情?
$urlRouterProvider.otherwise('/');
var app = {
name: 'main',
abstract: true,
url: '',
views: {
'header': {
templateUrl: 'header.tpl.html'
},
'footer': {
templateUrl: 'footer.tpl.html'
}
}
};
var home = {
name: 'main.home',
url: '/',
views: {
"@": {
templateUrl: 'home/home.tpl.html'
}
}
};
var wizard = {
name: 'main.wizard',
abstract: true,
url: '/wizard',
views: {
"@": {
templateUrl: 'wizard/wizard.tpl.html'
}
}
};
var step1 = {
name: 'main.wizard.step1',
url: '/step1',
views: {
"": {
templateUrl: 'wizard/step1.tpl.html'
}
}
};
/** repeat similarly for step2, step3 & step 4 **/
$stateProvider.state(app);
$stateProvider.state(home);
$stateProvider.state(wizard).state(step1).state(step2).state(step3).state(step4);
謝謝,這幫助我更好地理解事情。 – eflat