检测Ionic中的特定app.state更改

时间:2016-04-30 12:17:45

标签: javascript jquery ionic-framework

是否有任何方法可以检测特定状态仅在我的情况下发生变化 我想只在从app.state 1转到app.state 2时运行一个函数。 controller.js

 if(app.state1 to app.state2) {
    $scope.run();
    }

我也搜索过但发现没有任何相关内容。
问候。

1 个答案:

答案 0 :(得分:1)

离子路由使用了角度ui-router,因此事件回调的使用方式相同:

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();
    }
});