/* 设置cookie */
function setCookie (cName, value, options) {
options = options||{};
let expire = null;
if(options.hour){
let today = new Date();
expire = new Date();
expire.setTime(today.getTime() + options.hour * 3600000);
}
window.document.cookie =
cName + '=' + value
+ (options.path ? '; path=' + options.path : '')
+ (options.hour ? '; expires=' + expire.toGMTString() : '')
+ (options.domain ? '; domain=' + options.domain : '');
return this;
}
/* 获取cookie */
function getCookie (cName) {
if (document.cookie.length > 0) {
let cStart = document.cookie.indexOf(cName + '=')
if (cStart !== -1) {
cStart = cStart + cName.length + 1
let cEnd = document.cookie.indexOf(';', cStart)
if (cEnd === -1) cEnd = document.cookie.length
return unescape(document.cookie.substring(cStart, cEnd))
}
}
return ''
}
/* 删除cookie */
function delCookie (cName) {
setCookie(cName, '', -1)
}
export default {
setCookie,
getCookie,
delCookie
}
使用:
//这里使用的方式是将cookie工具类挂载到vue上
import cookie from './utils/cookie';
Vue.prototype.$cookie = cookie;
//示例cookie存储
this.$cookie.setCookie('tk', res.data.token, {hour: 24 * 14 });
this.$cookie.setCookie('username', this.form.username, {hour: 24 * 14 });