首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用$state.go()和onResume()

使用$state.go()和onResume()
EN

Stack Overflow用户
提问于 2016-04-19 08:57:38
回答 1查看 735关注 0票数 0

每次我的应用程序从后台转到前台时,我都试图重定向到我的登录页面,但是我得到了这个错误:Uncaught TypeError:$state.go不是一个函数

所以我显然做错了什么,但我搞不懂什么。

下面是我的app.js中代码的一些部分:

代码语言:javascript
复制
// 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');
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-19 09:00:21

只需在块中移动您的函数,运行并删除onResume中的onResume。只有角函数是可注射的。实际上,在您的情况下,您可能会得到一个事件对象,但肯定不是$state。

代码语言:javascript
复制
.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');
    }
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36713470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档