2016-04-19 2 views
0

私のアプリケーションがバックグラウンドからフォアグラウンドになるたびに私のログインページにリダイレクトしようとしていますが、そのエラーが出ます: Uncaught TypeError:$ state.go is not a機能

私は明らかに何か間違っていましたが、私は何を得ることができません。ここで

私app.jsでの私のコードの一部です:

// Ionic Starter App 
angular.module('starter', ['ionic', 'starter.controllers', 'starter.services']) 
.config(function($stateProvider, $urlRouterProvider) { 

    $stateProvider 

    .state('resetLogin', { 
    url: '/resetLogin', 
    templateUrl: 'templates/resetLogin.html', 
    controller: 'ResetLoginCtrl' 
    }) 
    .state('login', { 
    url: '/login', 
    templateUrl: 'templates/login.html', 
    controller: 'LoginCtrl' 
    }) 
    .state('tab', { 
    url: '/tab', 
    abstract: true, 
    templateUrl: 'templates/tabs.html' 
    }) 
    .state('tab.account', { 
    url: '/account', 
    views: { 
     'tab-account': { 
     templateUrl: 'templates/tab-account.html', 
     controller: 'AccountCtrl' 
     } 
    } 
    }); 

    $urlRouterProvider.otherwise('/login'); 

}) 

.run(function($ionicPlatform, $state) { 
    $ionicPlatform.ready(function() { 
    if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) { 
     cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
    } 
    if (window.StatusBar) { 
     StatusBar.styleDefault(); 
    } 
    }); 

    function onDeviceReady() { 
    } 
}); 

document.addEventListener("resume", onResume, false); 
    function onResume($state){ 
     $state.go('login'); 
    } 
+0

コントローラはどこですか –

答えて

2

ジュストブロックランであなたの関数を移動し、onResumeで$状態を削除します。 角膜機能のみが注射可能です。事実、イベントオブジェクトを取得している可能性がありますが、確かに$状態ではありません。

.run(function($ionicPlatform, $state) { 
    $ionicPlatform.ready(function() { 
    if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) { 
     cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
    } 
    if (window.StatusBar) { 
     StatusBar.styleDefault(); 
    } 
    }); 

    function onDeviceReady() { 
    } 
    document.addEventListener("resume", onResume, false); 
    function onResume(){ 
     $state.go('login'); 
    } 
}); 
+0

ありがとうございました!私は前にこれを試したと思っていましたが、うまくいかなかったので間違ったやり方をしなければなりませんでした。 これでいいです:) – Aweuzegaga

関連する問題