我有一個角/ Rails應用程序與需要滿足2個模板2頁:角ui.router提供狀態
該國目前有<ui-view></ui-view>
在2個不同的頁面上顯示:
的問題是,#2,以顯示正確的狀態,用戶需要去http://localhost:3000/employees/help_desk#/help_desk URL。相反,我需要用戶能夠去http://localhost:3000/employees/help_desk和路由器來服務#/ help_desk模板。
我該怎麼做到這一點?
ui.router至今代碼:
.config([
'$stateProvider',
'$urlRouterProvider',
function($stateProvider, $urlRouterProvider) {
//home state
$stateProvider
.state('home', {
url: '/home',
templateUrl: 'home/_home.html',
controller: 'MainCtrl',
resolve: {
postPromise: ['posts', function(posts){
var a = posts.getttAll();
return a;
}]
}
})
//help desk state
.state('help_desk', {
url: '/help_desk',
templateUrl: 'help_desk/_help_desk.html',
controller: 'HelpDeskCtrl',
resolve: {
postPromise: ['help_desk', function(help_desk){
var hd = help_desk.getttAll();
return hd;
}]
}
})
$urlRouterProvider.otherwise('home');
}])
我有2個完全不同的頁面和2個不同的模板。我只是想讓這兩個匹配。帶有家庭模板和員工的員工/帶help_desk模板的help_desk。所以,我對建議1如何工作感到困惑? – HoosierCoder
第一個選項是必需的,這樣當用戶直接輸入url時,就會加載正確的頁面。無論您使用的是什麼URL,您希望從服務器上加載相同的HTML + JS(包括Angular應用程序)。第二個選項告訴angular(ui-router)解析URL並在不使用散列的情況下從中識別狀態。綜上所述:選項一是爲客戶直接輸入網址,選項二爲在網站內導航。你需要做兩個。 – norbertk