重定向到登录页面或仪表板Sammy JS

时间:2018-08-29 13:33:47

标签: javascript routing sammy.js

我正在使用Sammy Js进行Jquery路由,我需要检查登录名。如果用户已经登录,则页面可以移至请求的URL。但是,如果用户未登录,则无论请求的URL是什么,都必须将其重定向到登录页面。我想在应用程序定义中执行此操作。验证不应放在每页中

(function($) {
      var app =$.sammy('#pages', function() {
        this.before(/.*/, function() {
          var token=sessionStorage.getItem('access_token');
          if(!token){
            this.redirect('#/oAuth/Login');
          }
        });
        this.get('#/', function(context){
          var token=sessionStorage.getItem('access_token');
          if(!token){
            this.redirect('#/oAuth/Login');
          }
          else{
            this.redirect('#/Dashboard');
          }
        })
        this.get('#/oAuth/Login', function(context){
          (context.$element()).empty();
          context.render('login.html').appendTo(context.$element());
          $(document).attr("title", "OrangeTrac- Login");
        })
        this.get('#/Dashboard', function(context) {
          (context.$element()).empty();
          $(document).attr("title", "OrangeTrac- Dashboard");
          context.render(url).appendTo(context.$element());
        });
      });
      app.run('#/');
    })(jQuery);
  

我在此代码中有问题...

this.before(/.*/, function() {
   var token=sessionStorage.getItem('access_token');
   if(!token){
   this.redirect('#/oAuth/Login');
   }
});
     

这可以正确地重定向URL,但是登录页面和仪表板页面都可以   正在DOM中加载。

0 个答案:

没有答案