ionic app 打开后退出,再次进入app,所有路由失效,求指教
发布于 10个月前 作者 WilliamDu1981 660 次浏览 来自 问答

最近开发了一个app,ionic+cordova,一切都算正常,但遇到了个问题,app打开后,退出(结束进程),然后再次打开app,这时所有路由失效,比如之前登录之后会跳转到主页,但现在没有任何反应,LoginCtrl代码如下:

  angular.module('app.login',[])
  .controller('LoginCtrl', function ($scope, Sign, $state, $toast, $timeout,Session,$location) {
      var account = $scope.account = {};
      var isLogin=Session.isLogin();
  
      $scope.onSigninFormSubmit = onSigninFormSubmit;
  
      if(isLogin){
        $state.go('main.tabs.schedule', {}, {location: 'replace'});
      }
  
  
      function onSigninFormSubmit() {
        Sign.signin(account)
          .then(function () {
            $toast.show('Login Sucess');
            $state.go('main.tabs.schedule', {}, {location: 'replace'});
          });
      }
    })
    
    //第一次打开app正常
    //后面打开app,可以进入main路由,tabs及schedule都没有进入
    $stateProvider
    .state('main',{
        url:'/main',
        abstract:true,
        cache:false,
        templateUrl:'templates/menu.html',
        controller:'MainCtrl',
        onEnter:signInRequired
      })
      .state('main.tabs', {
        url: '/tabs',
        cache:false,
        abstract: true,
        views:{
          main:{
            templateUrl: 'templates/tabsController.html',
            controller:function(){
              alert('in tabsController');
            }
          }
        }
      })
      .state('main.tabs.schedule', {
        url: '/schedule',
        cache:false,
        views: {
          'schedule': {
            templateUrl: 'templates/schedule.html',
            controller: 'ScheduleCtrl'
          }
        }
      });

第一打开完全正常,就是退出之后再打开会这样,不知道有没有人遇到过这个问题。

回到顶部