如何使嵌套 ui-router 在每次路由更改时执行子控制器
how to make nested ui-router execute child controller every route change
以下是我的ui-路由器配置。我希望每次更改子状态时都会执行子控制器。
但是现在,仅在我第一次更改子状态时执行子控制器。
有人可以帮助我吗?
$stateProvider
.state('tab', {
url: '/tab',
abstract: true,
templateUrl: 'views/tabs.html'
})
.state('tab.order-foods',{
url:'/order-foods',
views:{
'tab-order-foods':{
templateUrl:'../views/tab-order-foods.html',
controller:'orderFoodsCtrl'
}
}
})
.state('tab.cart',{
url:'/cart',
views:{
'tab-cart':{
templateUrl:'../views/tab-cart.html',
controller:'cartCtrl'
}
}
})
.state('tab.orders',{
url:'/orders',
views:{
'tab-orders':{
templateUrl:'views/tab-orders.html',
controller:'ordersCtrl'
}
}
})
.state('tab.mine',{
url:'/mine',
views:{
'tab-mine':{
templateUrl:'views/tab-mine.html',
controller:'mineCtrl'
}
}
});
$urlRouterProvider.otherwise('/tab/order-foods');
检查这些:
你会看到,ionic 确实为我们缓存了所有内容。为了避免我们可以
- 通过
cache: false,
避免缓存
- 使用
$ionicConfigProvider.views.maxCache(0);
禁用缓存
- 或者保持缓存不变,让控制器只执行一次......同时在这些 View LifeCycle 和 Events 期间做一些聪明的事情
以下是我的ui-路由器配置。我希望每次更改子状态时都会执行子控制器。 但是现在,仅在我第一次更改子状态时执行子控制器。
有人可以帮助我吗?
$stateProvider
.state('tab', {
url: '/tab',
abstract: true,
templateUrl: 'views/tabs.html'
})
.state('tab.order-foods',{
url:'/order-foods',
views:{
'tab-order-foods':{
templateUrl:'../views/tab-order-foods.html',
controller:'orderFoodsCtrl'
}
}
})
.state('tab.cart',{
url:'/cart',
views:{
'tab-cart':{
templateUrl:'../views/tab-cart.html',
controller:'cartCtrl'
}
}
})
.state('tab.orders',{
url:'/orders',
views:{
'tab-orders':{
templateUrl:'views/tab-orders.html',
controller:'ordersCtrl'
}
}
})
.state('tab.mine',{
url:'/mine',
views:{
'tab-mine':{
templateUrl:'views/tab-mine.html',
controller:'mineCtrl'
}
}
});
$urlRouterProvider.otherwise('/tab/order-foods');
检查这些:
你会看到,ionic 确实为我们缓存了所有内容。为了避免我们可以
- 通过
cache: false,
避免缓存
- 使用
$ionicConfigProvider.views.maxCache(0);
禁用缓存
- 或者保持缓存不变,让控制器只执行一次......同时在这些 View LifeCycle 和 Events 期间做一些聪明的事情