如何在使用angularJS注销时禁用后退按钮

问题描述:

我正在使用应用程序,并且我想禁用按钮,但只是在一个视图(登录视图)中。当我点击注销时,我被重定向到第一个视图,即登录视图,在这里我想禁用后退按钮。 我尝试了一些在这个网站上提供的解决方案,但是它们在所有视图中都阻止了后退按钮。如何在使用angularJS注销时禁用后退按钮

这是我的注销控制器,我也有登录视图的登录控制器。

app.controller('LogoutCtrl', function($scope, $location, $state, $http, $window, $rootScope, $cookieStore, $cookies) { 
 

 
    $scope.logout = function() { 
 
    var cookies = $cookies.getAll(); 
 
    angular.forEach(cookies, function(v, k) { 
 
     $cookies.remove(k); 
 
    }); 
 
    }; 
 
});

在我注销控制器,我试图删除,因为我与cookies工作的所有Cookie,但我仍然有后退按钮的这个问题,它允许用户去其他只需按下后退按钮即可查看,无需登录。

请问我该怎么做?

+0

你指的是浏览器的返回键? – jbrown

+0

你如何处理你的网页,你需要检查是否重定向到任何部分,如果没有记录总是重定向到登录。无需阻止后退 –

+0

我认为问题在于你如何处理你的会话和状态。 –

把这个在你的config /路由文件和变化,只要你想

这会在你的路线变化

例如检查每次: -

angular 
    .module('MyApp') 
    .run(function($state, $scope,$cookies) { 
     $scope.$on('$routeChangeStart', function(next, current) { 
     if(!$cookies.get('user')){ 
      $state.go('login'); 
     } 
     }) 
    }) 
+0

谢谢,我尝试过,但我仍然有同样的问题! – Salma

+0

你在使用ui-route或ng-route? –