是否有任何方法可以检测特定状态仅在我的情况下发生变化 我想只在从app.state 1转到app.state 2时运行一个函数。 controller.js
if(app.state1 to app.state2) {
$scope.run();
}
我也搜索过但发现没有任何相关内容。
问候。
答案 0 :(得分:1)
离子路由使用了角度ui-router,因此事件回调的使用方式相同:
适当时:
$rootScope.$on('$stateChangeStart', function(ev, toState, toParams, fromState, fromParams){
if(toState.name == 'stateA' && fromState.name == 'stateB') {
// run your code
$scope.run();
}
});
<强>(UPDATE)强>
如果您需要申请多个州:
$rootScope.$on('$stateChangeStart', function(ev, toState, toParams, fromState, fromParams){
var states = ['stateB', 'stateC', 'stateD'];
if(toState.name == 'stateA' && states.indexOf(fromState.name) > -1) {
// run your code
$scope.run();
}
});