【发布时间】:2015-09-16 08:28:33
【问题描述】:
我正在开发一个用于子状态的应用程序。制作子状态的目的是
- 继承决心
- 继承url base
当我导航到子状态时,父状态的视图和控制器被初始化。子控制器根本没有初始化,视图根本没有显示。我认为奇怪的一件事是子视图实际上是通过 XHR 加载的,但它似乎从未出现过。
如何使子状态的视图出现,并且子状态的控制器使用父状态的解析进行初始化?
.state('restaurant', {
url: "/{city:[a-zA-ZåäöÅÖÄ]{2,}}/{restaurantUrl:[a-zA_ZåäöÅÄÖ\-]{2,}}",
views: {
"main": {
templateUrl: "/views/restaurant.html",
controller: "RestaurantCtrl",
resolve: {
restaurant: function($q, $stateParams, RestaurantsSrvc) {
/*Some stuff going on that returns a promise*/
}
}
}
}
})
.state('restaurant.checkout', {
url: "/checkout",
views: {
"main": {
templateUrl: "/views/checkout.html",
controller: "CheckoutCtrl"
}
}
})
【问题讨论】:
-
您是否将命名视图
<div ui-view="main"></div>添加到 restaurant.html 中? -
不,
ui-view="main"应用于驻留在我的 index.html 文件中的元素,所有模板都加载到该文件中
标签: angularjs angular-ui-router