javascript - 恢复或暂停cordova事件后如何解决?

标签 javascript angularjs cordova ionic-framework

我们可以使用 cordova 事件监听器监听“resume”和“resolve”事件。在 ionic 平台中,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}
      }
    }
  })

})

最佳答案

我会尝试这个:

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

(来源:Reloading current state - refresh data)

关于javascript - 恢复或暂停cordova事件后如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29774123/

相关文章:

javascript - 在单页上应用 Touch Swipe,用于动态加载数据的页面?

javascript - 工具提示不根据窗口大小进行调整

javascript - 重新定位跨度下方的一些文本

javascript - 隐藏/显示 Div onChange

javascript - AngularJs 将列表保持原始状态

javascript - 本地通知插件仅在index.html中工作 - 无法读取未定义的属性 'notification'

javascript - 如何获取post/get中多选下拉值的所有选定值?

javascript - node/angular js如何在对象数组中查找空属性

ajax - Angular 预渲染延迟 html 页面加载,以便预渲染加载 Ajax

javascript - UA PhoneGap 2.0 插件在 iOS 上无法正确初始化