1
我掙扎着爬與UI路由器工作嵌套狀態嵌套狀態UI路由器
我想一個頁面來查看的設備是有像/device/SERIAL_NUMBER/info
一個網址,
/device
是固定/SERIAL_NUMBER
是可變又名:id
/info
指嵌套狀態
我有一些我想要的嵌套狀態,但爲了簡單起見,我只顯示一個狀態。請注意,對於info
,它與父視圖共享相同的控制器,其他嵌套視圖不會。
國家建立
.state('device', {
url: '/device/:id',
templateUrl: '/views/devices/device.html',
controller: 'viewDeviceController'
})
.state('device.info', {
url: 'info',
templateUrl: '/views/devices/device_info.html'
})
我主要的HTML看起來像這樣
<body>
<header><h1>Title</h1></header>
<div ui-view>
<!-- This is where /views/devices/device.html goes -->
</div>
/views/devices/device.html看起來像這樣:
<div>General text about a device</div>
<div ui-view>
<!-- This is where /views/devices/device_info.html should go -->
</div>
如果我瀏覽到/#/device/L340009
我看到的主網頁和device.html
,我沒有看到device_info.html
- 這是預期,但最好我想默認爲加載第一路線(信息)
如果我瀏覽到/#/device/L340009/info
它將我重定向回家(這是我的otherwise
),所以路由有些問題
我在哪裏出錯了?
我覺得自己很蠢開始 - 那工作!如果沒有指定'info'作爲默認路由,我該如何獲取? – Chris
對不起,對此不完全確定「如果沒有指定信息,我如何獲取信息作爲默認路由?」我不完全明白。如果提供了錯誤的狀態,你是否在問如何進行默認重定向?如果是的話,我們可以使用'$ urlRouterProvider.otherwise('/ home');' - 檢查這個plunker http://plnkr.co/edit/4pjoofCXq444kjXLqGx8?p=info –
我已經有了一個其他的頂級路線,我的意思是,如果有人去'/設備/ XXXXX'我怎麼讓他們自動去'/設備/ XXXXX /信息' – Chris