在AngularJS的1.4版本中,是否可以使用$cookies来创建持久的cookie ?



使用1.4版本的AngularJS,是否可以使用$cookies创建持久的cookie ?

我想要的数据被存储一旦我登录,7天说。在1.3版本中。X,甚至不能设置过期日期。但是在1.4中,他们已经弃用了$cookieStore,并在$cookies中设置了一个到期日期选项。

我想知道这个是否创建所需的更长时间的cookie,而不是我关闭浏览器,一切都消失了。

您可以在$cookiesProvider上设置expires属性来改变$cookies服务的默认行为。$cookiesProvider在版本1.4中可用。

下面的代码可以满足您的要求。当你在写cookie的时候,你可以告诉截止日期。你可以关闭浏览器,cookie仍然有效。

设置过期日期防止浏览器关闭时被删除。使用javascript设置持久cookie

<!DOCTYPE html>
<html ng-app="cookiesExample">
  <head>
    <meta charset="utf-8" />
    <script src="https://code.angularjs.org/1.4.0-rc.2/angular.js"></script>
    <script src="https://code.angularjs.org/1.4.0-rc.2/angular-cookies.js"></script>
  </head>
  <body ng-controller="MainCtrl">
    <p>Hello {{name}}!</p>
    <script>
        angular.module('cookiesExample', ['ngCookies'])
      .controller('MainCtrl', ['$cookies', '$scope', function($cookies, $scope) {
        // Retrieving a cookie
        var favoriteCookie = $cookies.get('myFavorite');
        $scope.name = (favoriteCookie) ? 'welcome back' : 'first time';
        // Setting a cookie
        var now = new Date();
        now.setDate(now.getDate() + 7);
        $cookies.put('myFavorite', 'oatmeal', {
          expires: now
        });
      }]);
    </script>
  </body>

</html>

相关内容

  • 没有找到相关文章

最新更新