AngularJS 提供了很好的$cookie和$cookieStoreAPI 用来处理 cookies 。这两个服务都能够很好的发挥HTML5 cookies,当HTML5 API可用时浏览器会选择使用HTML5提供的API,如果不可用则默认选择document.cookies。无论那种方式,你都可以选择使用相同的API来进行工作。
第一步加载JS文件,并且依赖 cookie module
<script src="http://code.angularjs.org/1.2.9/angular.min.js"></script><script src="http://code.angularjs.org/1.2.9/angular-cookies.min.js"></script>
创建 angular module
var DemoApp = angular.module( 'DemoApp', ['ngCookies'] ).config( demoConfig );
将cookie module 注入到 controller 中
DemoApp.controller('DemoController', function($cookieStore, $scope, $location, $routeParams, $http , $timeout ){ .. body here .. })
现在可以使用 ‘put’ 、 ‘get’ 、‘remove’ 方法操作 cookie , $cookieStore 可以直接存储对象到cookie中,它会使用angularjs 的 toJson/fromJson 自动序列化和反序列化
$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");
DemoApp.controller('DemoController', function ($cookies, $scope) { $cookies.myFavorite = 'oatmeal haha';})
新闻热点
疑难解答