2015-03-31 67 views
1

我是AngularJS的noob。我正在嘗試管理Cookie,但它不起作用。我有兩個版本的代碼,它們的接縫完全相同,但如果第一個代碼可以正常工作,則第二個代碼失敗。使用AngularJS更新餅乾

我的登錄表單的代碼是在這裏:

(function() { 
 
    var app = angular.module('userApp', ['suiviChantiers', 'ngCookies']); 
 

 
    app.controller('UserLogin', ['$scope', '$http', '$cookies', 
 
     function($scope, $http, $cookies) { 
 

 
      $scope.login = function() { 
 
      $scope.user = this.user; 
 

 
      $http.post('services/user.php', { 
 
       action: 'login', 
 
       user: $scope.user 
 
      }).success(function(data) { 
 
       if (data.error) { 
 
       // [...] 
 
       } else if (data.message == 'success') { 
 
       $cookies.user = data.data; 
 
       console.log("User : " + $cookies.user); // Output is : User : MS1OVFEwWkRZeU5ETTBNVFV3TVE9PQ== 
 
       window.setTimeout(function() { 
 
        if ($cookies.redirectTo == null) { 
 
        document.location.href = "chantier/index.html"; 
 
        } else { 
 
        var dest = $cookies.redirectTo; 
 
        $cookies.redirectTo = null; 
 
        document.location.href = dest; 
 
        } 
 
       }, 3000); 
 
       } 
 
      }); 
 
      }; 
 
      // [...] 
 
     })(); 
 
    })();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-cookies.min.js"></script> 
 
<h1>Login form ...</h1>

在我的 「CHANTIER/index.html的」 控制器我有這樣的:

(function() { 
 
\t var app = angular.module('chantierApp', ['ngCookies']); 
 
\t 
 
\t app.controller('ChantierListController', ['$scope', '$cookies', 'userService', function($scope, $cookies, userService) { 
 
\t \t $scope.user = userService.user; 
 
\t \t console.log("User : "+$cookies.user); // Output is : User : undefined but $cookies.redirectTo is not empty 
 

 
\t }]); 
 
})();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-cookies.min.js"></script>

(對不起,這麼長的代碼文章) 你能解釋我爲什麼不更新cookies嗎?

感謝您的幫助。

回答

1

最後我解決了我的問題......一切都很好。但是在某些文件上有一些非常持久的緩存(即使在刪除緩存文件和tmp文件後)。 我以私人模式啓動了我的瀏覽器,一切正常。

感謝您的幫助。