如何在angularjs中首先登录页面

时间:2015-11-29 22:06:28

标签: javascript angularjs login yeoman-generator angular-fullstack

我是angularjs的新手,我正在尝试使用这个generator-angular-fullstack,

我希望页面首先登录而不是主页,我使用代码,我的解决方案是在MainCtrl中添加'authenticate:true'

angular.module('myapp')
  .config(function ($stateProvider) {
    $stateProvider
      .state('main', {
        url: '/',
        templateUrl: 'app/main/main.html',
        controller: 'MainCtrl',
        authenticate: true
      });
  }); 

并注释'event.preventDefault();'在app.js中运行函数

.run(function ($rootScope, $location, Auth) {
    // Redirect to login if route requires auth and you're not logged in
    $rootScope.$on('$stateChangeStart', function (event, next) {
      Auth.isLoggedInAsync(function(loggedIn) {
        if (next.authenticate && !loggedIn) {
          //event.preventDefault();
          $location.path('/login');
        }
      });
    });

但我不确定这些变化是好还是还有其他最佳解决方案。

1 个答案:

答案 0 :(得分:1)

要做到这一点,你的代码将是这样的

main.js

中的

tr-TR
account.js

中的

float f;
var result = float.TryParse("5,28", NumberStyles.Float, 
                                    CultureInfo.GetCultureInfo("tr-TR"), out f); // true
login.controller.js

中的

 angular.module('myapp')  
       .config(function ($stateProvider) {
        $stateProvider
          .state('main', {
            url: '/main',
            templateUrl: 'app/main/main.html',
            controller: 'MainCtrl'
          });   
      });