2017-04-12 124 views
0

我已经使用angularJS创建了一个登录页面,我在提交表单时将用户名和密码设置为静态,并将其重定向到欢迎屏幕,现在我希望在单击注销时注销,从欢迎页面注销并返回到登录页面?怎么可能使用angularJS?如何使用angularJS从页面注销

这里是我写的代码:

.controller("loginController", function($scope, $location, $rootScope){ 
          $scope.login = function() { 
           var user = $scope.username; 
           var password = $scope.password; 
           var result = $scope.username + $scope.password; 
           console.log(result); 
           if (user == "admin" && password == 'admin'){ 
            $rootScope.loggedIn = true; 
            $location.path('/welcome'); 
           } else { 
            alert("INVALID CREDENTIALS"); 
           } 
          } 
.controller('welcomeController', function($scope){ 
        $scope.message = "welcome here" 
       }) 
+0

我也将用户和密码存储在一个变量中,但不知道它是如何工作的! –

回答

0

写一个函数到您的网页重定向到主页,做到这一点,

.controller('logoutController', function($scope,$location){ 
    $scope.logout = function(){ 
     $location.path('/home'); 
    } 
}) 

,并使用称之为NG单击

<button ng-click="logout()"> 
    Logout 
</button> 
+0

Thankyou它的工作 –

+0

@kritikaverma标记为答案,如果它有帮助 – Sajeetharan

+0

你在这里做的是重定向到主页,但如果我更改像http:// localhost/login /#/的URL到http://本地主机/登录/#/欢迎然后它重新导向我的欢迎页面,在这种情况下不会发生,如果我没有登录!使用这种方法,这种方法是错误的,必须有一些条件需要放! –

1

按照前answer中的Sajeetharan所述进行。
在注销功能

$scope.username$scope.password只是清晰的价值观写一个函数到您的网页重定向到主页,做到这一点,

.controller('logoutController', function($scope,$location){ 
    $scope.logout = function(){ 
     //Just clear values from scope 
     $scope.username = ''; 
     $scope.password = ''; 
     $location.path('/home'); 
    } 
}) 

,并使用称之为NG单击

<button ng-click="logout()"> 
    Logout 
</button> 

顺便说一句,您使用的方法不是很好。

+0

当前我正在使用静态输入值,因为我是AngularJS的初学者,我的问题不是我需要我的主页的值不会在欢迎屏幕上重定向,除非除非用户登录。在我的情况下,如果我将url localhost/login /#更改为localhost/login /#/ welcome,那么它会重定向到此页面,无论我是否登录了! –

+0

您必须在控制器或服务中创建一个**验证**函数(_better option_),您必须调用任何控制器的加载函数(_running该函数首先应该在controller_中执行)。在该功能中,您必须检查用户是否有权访问当前页面并采取相应措施。 – Chirag

相关问题