具體app.state變化是否有任何檢測特定國家改變只喜歡在我的情況 我想只要我們從app.state 1到2 app.state 控制器運行的功能的方法.js文件檢測的離子
if(app.state1 to app.state2) {
$scope.run();
}
我已經搜索過,但沒有發現任何與此有關。
此致敬禮。
具體app.state變化是否有任何檢測特定國家改變只喜歡在我的情況 我想只要我們從app.state 1到2 app.state 控制器運行的功能的方法.js文件檢測的離子
if(app.state1 to app.state2) {
$scope.run();
}
我已經搜索過,但沒有發現任何與此有關。
此致敬禮。
離子途徑中使用的角UI-路由器因此事件回調以相同的方式使用:
在適當情況下:
$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();
}
});
非常感謝。你真的解決了我的問題。 – Atula
還有一個問題。我們可以添加多個* fromState.name *嗎? – Atula
不客氣,fromState將始終只顯示路由器將要運行的當前狀態。如果你想要求多個狀態,你可以使用一個單獨的JavaScript代碼:'var states = ['stateB','stateC','stateD'];如果(states.indexOf(fromState.name)> -1){...}' – felipecamposclarke
對不起,我從來沒有用過Ionic。 –
沒問題@Rory – Atula