关于 angular cookie 设置的坑

初识Angular,才知道掉进了这么一个各种大坑的坑。

先说下对于$cookie.put 这几个方法,只有1.4以上版本才可以用,其余低于版本请使用 $cookieStore;

下面举例下使用方法:

$cookies

https://code.angularjs.org/1.4.5/docs/api/ngCookies/service/$cookies

 var ngApp = angular.module('myApp', ['ngCookies']);
      ngApp.controller('myController', function ($scope, $http, $cookies) {
          if ($cookies.get('myName') == undefined) {
              //设置过期时间为一天
              var expireDate = new Date();
              expireDate.setDate(expireDate.getDate() + 1);
  
              $cookies.put('myName', 'Quber', { expires: expireDate });
          } else {
             console.log($cookies.get('myName'));
         }
     });

$cookieStore

$cookieStore.put("name","my name");
$cookieStore.get("name") == "my name";
$cookieStore.remove("name");
 
$cookieStore.put("persion", {
            name: "my name",
            age: 18
});
 
scope.person = $cookieStore.get("persion");//会使用angularjs 的 toJson/fromJson 自动序列化和反序列化
 
 
 
app.controller('DemoController', function ($cookies, $scope) {
        $cookies.myFavorite = 'oatmeal haha';
}) 

里面还有各种坑,反正大家尽管跳吧。

原文地址:https://www.cnblogs.com/cench/p/5374032.html