首次打开应用程序时的条件页面显示

亚历山大

嗨,我才刚刚开始学习angular && angular-ui-router,并试图弄清楚如何确定何时首次打开该应用程序以将用户发送到登录页面或主页。

这是我到目前为止所拥有的:

codeArtApp.config(function($stateProvider, $urlRouterProvider){
$stateProvider
    .state('login',{
        url : '/login',
        templateUrl:'App/scripts/login/loginView.html',
        controller: 'loginCtrl'
    })
    .state('profile', {
        url : '/profile',
        templateUrl:'App/scripts/login/loginView.html',
        controller: 'profileCtrl'
    })
    .state('404', {
        url: '/404',
        templateUrl:'App/scripts/views/404.html'
    });


$urlRouterProvider.otherwise("404");

});

codeArtApp.run(['$state', '$rootScope', function($state, $rootScope, $log){
$rootScope.$on('$stateChangeStart', function(event, toState, toParams, fromState){
    if(fromState.url === '^' && toState.url !== 'login'){
        $state.go('login');
    }

});

}]);

我在这里假设的是,如果fromState.url将设置为,^则该应用程序将首次启动。

由于某种原因,这段代码进入了一个无限循环,我对此栈进行了跟踪: 在此处输入图片说明

现在,从我可以知道发生这种情况的原因是,如果$state.go('login')被执行的事件toState.url始终为404

我曾希望如果$state.go('login')将要执行的获取toState.url设置为登录,并且该调用将不再执行。

我可能没有在正确的地方设置此逻辑...

谁能告诉我在Angular中如何有条件地显示页面?

拉迪姆·科勒

有一个指向工作的punker的链接,主要更改如代码所示:

codeArtApp.run(['$state', '$rootScope',
 function($state, $rootScope, $log) {

  $rootScope.$on('$stateChangeStart', 
    function(event, toState, toParams, fromState) {

      // instead of 
      // toState.url !== 'login'
      // we compare 
      // toState.name !== 'login'
      var shouldLogin = fromState.url === '^' 
              && toState.name !== 'login';

      if(shouldLogin)
      {
        // this way we stop current execution
        event.preventDefault();
        // and navigate to login
        $state.go('login');  
      }
    });
 }
]);

toState.url将包含URL,即'/login'代替'login'另请检查:状态更改事件以了解有关的更多信息event.preventDefault();显示以上内容活塞...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

首次打开应用程序时的条件页面显示

来自分类Dev

如何在首次打开应用程序时显示视图?

来自分类Dev

如何仅在首次运行应用程序时在我的iOS应用程序中打开页面视图控制器?

来自分类Dev

如何仅在首次运行应用程序时在我的iOS应用程序中打开页面视图控制器?

来自分类Dev

在首次启动应用程序时显示对话框

来自分类Dev

如果应用程序是首次启动,如何显示页面

来自分类Dev

如果是首次启动应用程序,如何显示页面

来自分类Dev

打开应用程序时不显示推

来自分类Dev

打开应用程序时如何显示密码弹出窗口?

来自分类Dev

打开应用程序时如何显示已保存的号码?

来自分类Dev

首次启动应用程序时,对话框窗口将打开

来自分类Dev

即使首次登录后,Facebook AccessToken.getAccessToken在打开应用程序时也为null

来自分类Dev

Android:首次运行应用程序时,共享选项菜单会自动打开

来自分类Dev

如何使WSCoachMarksView演练仅在用户首次打开应用程序时运行?

来自分类Dev

如何再次打开应用程序时显示应用程序Qt

来自分类Dev

首次加载应用程序时如何显示加载指示器

来自分类Dev

选择特定的tabItem()以在首次启动闪亮应用程序时默认显示

来自分类Dev

ServletException当打开我的应用程序时

来自分类Dev

打开应用程序时的调用方法

来自分类Dev

首次运行应用程序时出错无法投射问题

来自分类Dev

单击并已打开应用程序时,Toast不向页面发送参数

来自分类Dev

在制作登录应用程序时需要建议,该应用程序会将用户重定向到更改密码页面以进行首次登录

来自分类Dev

在Android用户打开应用程序时向他们显示应用程序更新消息

来自分类Dev

首次启动闪亮的应用程序时显示一个按钮,该按钮将导致tabItems内容

来自分类Dev

从通知打开应用程序时显示特定选项卡

来自分类Dev

打开我的应用程序时如何显示用户的当前位置

来自分类Dev

Android通知:打开应用程序时不显示通知吗?

来自分类Dev

仅在首次启动应用程序时,如何启动具有特定活动的应用程序?

来自分类Dev

启动ASP.NET应用程序时显示存根页面

Related 相关文章

  1. 1

    首次打开应用程序时的条件页面显示

  2. 2

    如何在首次打开应用程序时显示视图?

  3. 3

    如何仅在首次运行应用程序时在我的iOS应用程序中打开页面视图控制器?

  4. 4

    如何仅在首次运行应用程序时在我的iOS应用程序中打开页面视图控制器?

  5. 5

    在首次启动应用程序时显示对话框

  6. 6

    如果应用程序是首次启动,如何显示页面

  7. 7

    如果是首次启动应用程序,如何显示页面

  8. 8

    打开应用程序时不显示推

  9. 9

    打开应用程序时如何显示密码弹出窗口?

  10. 10

    打开应用程序时如何显示已保存的号码?

  11. 11

    首次启动应用程序时,对话框窗口将打开

  12. 12

    即使首次登录后,Facebook AccessToken.getAccessToken在打开应用程序时也为null

  13. 13

    Android:首次运行应用程序时,共享选项菜单会自动打开

  14. 14

    如何使WSCoachMarksView演练仅在用户首次打开应用程序时运行?

  15. 15

    如何再次打开应用程序时显示应用程序Qt

  16. 16

    首次加载应用程序时如何显示加载指示器

  17. 17

    选择特定的tabItem()以在首次启动闪亮应用程序时默认显示

  18. 18

    ServletException当打开我的应用程序时

  19. 19

    打开应用程序时的调用方法

  20. 20

    首次运行应用程序时出错无法投射问题

  21. 21

    单击并已打开应用程序时,Toast不向页面发送参数

  22. 22

    在制作登录应用程序时需要建议,该应用程序会将用户重定向到更改密码页面以进行首次登录

  23. 23

    在Android用户打开应用程序时向他们显示应用程序更新消息

  24. 24

    首次启动闪亮的应用程序时显示一个按钮,该按钮将导致tabItems内容

  25. 25

    从通知打开应用程序时显示特定选项卡

  26. 26

    打开我的应用程序时如何显示用户的当前位置

  27. 27

    Android通知:打开应用程序时不显示通知吗?

  28. 28

    仅在首次启动应用程序时,如何启动具有特定活动的应用程序?

  29. 29

    启动ASP.NET应用程序时显示存根页面

热门标签

归档