1.放入src/main.js里
// 配置cookie开始
Vue.prototype.setCookie = function (key, value, options = {path: '/'}) {
let _time = 0
let exp = ''
if (options.time_format != undefined && options.time != undefined) {
exp = new Date()
switch (options.time_format) {
case 'y': // y year
_time = options.time * 365 * 24 * 60 * 60 * 1000
break
case 'm': // m month
_time = options.time * 30 * 24 * 60 * 60 * 1000
break
case 'd': // d day
_time = options.time * 24 * 60 * 60 * 1000
break
case 'h': // h hour
_time = options.time * 60 * 60 * 1000
break
case 'min': // min minute
_time = options.time * 60 * 1000
break
default: // s second
_time = options.time * 1000
}
exp.setTime(exp.getTime() + _time)
}
document.cookie = [
encodeURIComponent(key), '=', encodeURIComponent(value),
exp != '' ? '; expires=' + exp.toUTCString() : '',
options.path ? '; path=' + options.path : '',
options.domain ? '; domain=' + options.domain : '',
options.secure ? '; secure' : ''
].join('')
}
Vue.prototype.getCookie = function (key) {
let arr, reg = new RegExp("(^| )" + key + "=([^;]*)(;|$)")
if (arr = document.cookie.match(reg))
return decodeURIComponent(arr[2])
else
return null
}
Vue.prototype.delCookie = function (key) {
let exp = new Date()
exp.setTime(exp.getTime() - 1)
let cval = this.getCookie(key)
if (cval != null && cval != '') {
console.log(cval)
this.setCookie(key, '', {time_format: 'd', time: -1, path: '/'})
}
}
// 配置cookie结束
2,使用方法
this.getCookie('name')//获取
this.delCookie('name')//删除
this.setCookie('name')//储存