2015-04-21 28 views
1

我们可以通过cordova事件监听器收听事件的“简历”和“解决方案”。在离子平台,this corresponds to恢复或暂停科尔多瓦事件后如何解决?

$ionicPlatform.on('resume', function() { 
    $rootScope.$broadcast('onResume'); 
    }); 

    $ionicPlatform.on('pause', function() { 
    $rootScope.$broadcast('onPause'); 
    }); 

我的应用程序的某些网页需要决心采取地方(见下文authResolve)。

但是,一旦用户退出应用程序(双击iphone上的主页按钮),然后返回,如何再次调用函数解析?就像你如何将解析函数与上面的cordova事件监听器结合起来?谢谢!

app.js(部分)

.config(function($stateProvider, $urlRouterProvider) { 
    // 
    $urlRouterProvider.otherwise('/auth'); 

    // 
    var authResolve = function ($q, Auth) { 
    var qResolve = $q.defer(); 
    var AuthObj = Auth.getAuthObj(); 
    switch (AuthObj.authStatus) { 
     case true: 
     qResolve.resolve("AUTH_RESOLVE_SUCCESS"); 
     break 
     case false: 
     qResolve.reject("AUTH_RESOLVE_UNAUTHORIZED"); 
     break 
     default: 
     qResolve.reject("AUTH_RESOLVE_OTHER", AuthObj); 
     break 
    }; 
    return qResolve.promise; 
    }; 

// REST OF .config 

    .state('tab.album', { 
    url: '/dash/:albumName', 
    views: { 
     'menuContent': { 
     templateUrl: 'templates/tab-album.html', 
     controller: 'AlbumCtrl', 
     resolve: {authResolve: authResolve} 
     } 
    } 
    }) 

}) 

回答

1

我想试试这个:

$ionicPlatform.on('resume', function() { 
    $state.transitionTo($state.current, $stateParams, { 
     reload: true, 
     inherit: false, 
     notify: true 
    }); 
}); 

(来源:Reloading current state - refresh data