AngularJS中对cookie的操作封装了一个单独的模块,模块名为ngCookies,若想使用需在页面中先引入angular-cookies.js:
1 2 |
|
然后將ngCookies模块注入到我们自定义的模块的依赖模块中:
1 |
|
ngCookies模块中有两个cookies读写相关的服务:$cookies和$cookieStroe。无论使用哪种都要先将其注入到控制器中,为了比较二者的区别,都将其注入到控制器中:
1 |
|
设置cookie用put()方法:
1 |
|
1 |
|
例如设置一个cookie,名为“userName”,值为“yangmin”:
1 2 |
|
1 2 |
|
获取cookie用get()方法:
1 |
|
1 |
|
例如获取上面设置的“userName”:
1 |
|
1 |
|
删除cookie用remove():
1 |
|
1 |
|
例如删除“userName”
1 |
|
1 |
|
$cookies和$cookieStore的区别:
1.$cookies设置的cookie值一般为字符串,$cookieStroe可用于设置字符串、对象、数组等。
1 2 3 |
|
1 2 3 |
|
2.$cookies可设置参数,例如可设置cookie的过期时间。$cookieStore无法设置参数
1 2 3 |
|
在使用$cookies进行cookie的删除的时候,有时候会删除不掉cookit,这个时候,需要在删除cookie,指定cookie的路径。eg:
$cookies.remove("name",{"path":'/'});