前端项目开发时,常常需要很多小技巧,比如使用Cookie巧妙实现某个效果。此次就以Vue项目记录一下如何使用Cookie。

cookie.js

/*** 写入cookie* @param {*} name * @param {*} value * @param {*} time */
function setCookie(name, value, time) {var strsec = getsec(time);var exp = new Date();exp.setTime(exp.getTime() + strsec * 1);document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}/*** 设置过期时间* @param {*} str * @returns */
function getsec(str) {var str1 = str.substring(1, str.length) * 1;var str2 = str.substring(0, 1);if (str2 == "s") {return str1 * 1000;} else if (str2 == "h") {return str1 * 60 * 60 * 1000;} else if (str2 == "d") {return str1 * 24 * 60 * 60 * 1000;}
}
/*** 读取cookie* @param {*} name * @returns */
function getCookie(name) {var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");if (arr = document.cookie.match(reg)) return unescape(arr[2]);else return null;
}/*** 删除cookie* @param {*} name */
function delCookie(name) {var exp = new Date();exp.setTime(exp.getTime() - 1);var cval = getCookie(name);if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}export {setCookie,getCookie,delCookie
}

引用Cookie的文件,如index.vue

import {setCookie,getCookie,delCookie
} from '../utils/cookie';methods: {setValToCookie() {let target_json = {};target_json['username'] = "Vegeta";setCookie("target_json", JSON.stringify(target_json), "s10");// 设置该cookie的键值以及10秒的过期时间},getValToCookie() {let target_str = getCookie("target_json")console.log("target_str =>", target_str)if(target_str != null) {let target_json = JSON.parse(target_str)if(target_json.username == 'Vegeta') {// TododelCookie("target_json")// 删除该Cookie}}}
}

Vue项目使用Cookie,以Json格式存入与读取Cookie,设置过期时间以及删除操作相关推荐

  1. 解决vue项目中prettier、eslint格式冲突问题

    解决vue项目中prettier.eslint格式冲突问题 我是用prettier作为vscode默认的格式化插件的,vue项目自动保存的时候,格式化,会自动在代码末尾添加分号,单引号会自动变成双引号 ...

  2. Node.js:项目中的 package.json 格式

    1. node.js 项目包下的 package.json : 实例: {"name" : "chatroooms","version" : ...

  3. C# JSON格式的字符串读取到类中

    2019独角兽企业重金招聘Python工程师标准>>> 将JSON格式的字符串读取到类中 本例中建立JSON格式的字符串json,将其内容读取到Person类中 运行本代码需要添加引 ...

  4. 前端小白闲着没事,封装一个可以设置过期时间的localStorage存储函数,在vue脚手架中使用

    本身localStorage 是没有这个功能的,除非手动删除要不永久保存在本地. seesionStorage 我们就不考虑 他这个只要网页的标签关闭了 在当前标签就自动清除了存储. 在工作中 我们用 ...

  5. java cookie过期_Java中Servlet Cookie设置过期时间(expires,max-age)

    Java中Servlet Cookie设置过期时间(expires,max-age) expires或者max-age指定了coolie的生存期,默认情况下coolie是暂时存在的,他们存储的值只在浏 ...

  6. vue项目引入并使用svg格式图标文件

    先创建一个vue项目 参考代码如下 vue create svgtext 然后 引入一个第三方依赖svg-sprite-loader 参考代码如下 npm i svg-sprite-loader@6. ...

  7. C# 系统应用之Cookie\Session基础知识及php读取Cookie\Session

    本文主要是毕业设计"个人电脑使用记录清除软件"系列系统应用文章中关于Cookie方面的知识,主要从介绍Cookie的基础知识和PHP关于Cookie\Session两个会话管理机制 ...

  8. php setcookie 过期,php cookie怎么设置过期时间?

    PHP中可以使用setcookie()函数设置cookie的过期时间.语法为"setcookie(name,value,expire,path,domain,secure)":其中 ...

  9. cookie设置过期时间

    封装初衷-不想每次设置cookie的过期时间都写一遍,比较烦! 目前这个包放在npm库中,下载npm install happycookie class happyCookie {constructo ...

最新文章

  1. 熟悉常用的HBase操作,编写MapReduce作业
  2. 【逆向】UE4 渲染流程分析
  3. Android——四大组件、六大布局、五大存储
  4. 如何架设灵活多变的数据采集路线?
  5. 简易的设计模式——原型模式
  6. 踩坑 - click事件与blur事件冲突问题 input文件上传同名文件问题
  7. IntelliJ IDEA 配置文件位置
  8. java自动类型提升_Java中的基本数据类型转换(自动、强制、提升)
  9. 计算机组成与结构学的是什么内容,计算机组成与体系结构教学大纲.doc
  10. SI5341驱动(verilog)
  11. PyQt5,资源文件 .qrc 的使用
  12. 关于编译android程序,期待模拟器,中文路径的问题【转载】
  13. kettle数据清洗
  14. 1、 域名系统的主要功能是什么?互联网的域名结构是怎样的?域名系统中的本地域名服务器、根域名服务器、顶级域名服务器以及权限域名服务器有何区别?2、 假定要从已知的URL获得一个万维网文档。若该万维网服
  15. 标准Lipschitz连续函数与伪Lipschitz连续函数
  16. 一文带你了解APS生产计划排程系统
  17. arm芯片,远程空中升级程序技术方案
  18. windows 快捷键之新建文件夹
  19. 学计算机的新手用什么笔记本好一点,笔记本什么配置比较好 有什么推荐呢
  20. 小时候真傻,居然想着快快长大

热门文章

  1. 用16进制表示的颜色代码表
  2. 2022年建筑电工(建筑特殊工种)免费试题及建筑电工(建筑特殊工种)证考试
  3. MT8516源码编译问题mDNSResponder-320.10.80 fetcher failure
  4. 一文看懂AWS IAM设计和使用
  5. 今日更新53个网络安全资料
  6. spring日志加载代码解析
  7. 计算机的主机主要由什么器件组成,计算机的主机主要是由()等器件组成。此题为多项选择题。_考试资料网...
  8. SpringBoot网上书城的设计与实现源码+文档
  9. BUUCTF 还原大师
  10. 中彩双色球彩票软件 红球预测专家 多特软件