angular中的cookie讀寫方法,angularcookie讀寫
AngularJS中對cookie的操作封裝了一個單獨的模組,模組名為ngCookies,若想使用需在頁面中先引入angular-cookies.js:
<script src="js/angular.min.js"></script><script src="js/angular-cookies.js"></script>
然後將ngCookies模組注入到我們自訂的模組的相依模組中:
var app = angular.module("myApp",['ngCookies']);
ngCookies模組中有兩個cookies讀寫相關的服務:$cookies和$cookieStroe。無論使用哪種都要先將其注入到控制器中,為了比較二者的區別,都將其注入到控制器中:
app.controller('namesCtrl', ['$cookies','$cookieStore',function($cookies, $cookieStore){}]);
設定cookie用put()方法:
$cookies.put(key, value[, options]);
$cookieStore.put(key, value);
例如設定一個cookie,名為“userName”,值為“yangmin”:
//使用$cookies設定cookie$cookies.put('userName', 'yangmin');
//使用$cookieStore設定cookie$cookieStore.put('userName','yangmin');
擷取cookie用get()方法:
$cookies.get(key);
$cookieStore.get(key);
例如擷取上面設定的“userName”:
$cookies.get(userName);//yangmin
$cookieStore.get("userName"); //yangmin
刪除cookie用remove():
$cookies.remove(key[, options]);
$cookieStore.remove(key);
例如刪除“userName”
$cookies.remove("userName");
$cookieStore.remove("userName");
$cookies和$cookieStore的區別:
1.$cookies設定的cookie值一般為字串,$cookieStroe可用於設定字串、對象、數組等。
$cookies.put("person",{name:"Amy",age:23});var person = $cookies.get("person");console.log(person.age);//undefined
$cookieStore.put("person",{name:"Amy",age:23});var person = $cookieStore.get("person");console.log(person.age);//23
2.$cookies可設定參數,例如可設定cookie的到期時間。$cookieStore無法設定參數
var expireDate = new Date();expireDate.setDate(expireDate.getDate() + 1);$cookies.put("userName",“yangmin”,{'expires': expireDate});//“userName”一天后到期
以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。