【工具类】cookie工具类封装

/* 设置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 });

猜你喜欢

转载自blog.csdn.net/THcoding_Cat/article/details/109902515