我是靠谱客的博主 甜美小松鼠,最近开发中收集的这篇文章主要介绍Vue设置cookie,cookie的存储、获取、清除,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

// 设置cookie

/**
 *
 * @param {*} exdays  保存天数
 * 使用
 *   文件目录
 *     总目录
 *       - src
 *         - utils
 *          - cookie.js
 * 
 *   单文件引入使用
 *   import { setCookie, getCookie, clearCookie, clearCookies } from '@/utils/cookie'
 *    
 * setCookie(参数名(),参数值, 保存天数)  存储cookie
 * getCookie(参数名)                    获取cookie
 * clearCookie(参数名)                  清除cookie
 * clearCookies()                       清除所有cookie
 *
 */

function setCookie(cName = '', cValue = '', exdays = '') {
  var exdate = new Date() // 获取时间
  exdate.setTime(exdate.getTime() + 24 * 60 * 60 * 1000 * exdays) // 保存的天数
  // 字符串拼接cookie
  window.document.cookie = cName + '=' + escape(JSON.stringify(cValue)) + ';path=/;expires=' + exdate.toGMTString()
}

// 读取cookie
function getCookie(name) {
  if (document.cookie.length > 0) {
    var allcookies = document.cookie
    name += '='
    var pos = allcookies.indexOf(name)
    if (pos != -1) {
      var start = pos + name.length
      var end = allcookies.indexOf(';', start)
      //这里根据','分隔出该名称的值,如果设置Cookie时用的是','分隔请替换成相应符号。
      if (end == -1) {
        end = allcookies.length
      }
      var value = allcookies.substring(start, end)
      return JSON.parse(unescape(value))
    } else {
      return
    }
  }
}

// 清除cookie
function clearCookie(name) {
  setCookie(name, '', -1) // 修改2值都为空,天数为负1天就好了
}

// 清除所有cookie
function clearCookies() {
  var temp = document.cookie.split(';')
  var name
  for (var i = 0; ; i++) {
    if (!temp[i]) break
    name = temp[i].split('=')[0]
    var exp = new Date()
    exp.setTime(exp.getTime() - 1)
    document.cookie = name + "= ''" + '; expires=' + exp.toGMTString()
  }
}
export { setCookie, getCookie, clearCookie, clearCookies }

最后

以上就是甜美小松鼠为你收集整理的Vue设置cookie,cookie的存储、获取、清除的全部内容,希望文章能够帮你解决Vue设置cookie,cookie的存储、获取、清除所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部