zoukankan      html  css  js  c++  java
  • vue封装cookie及使用

    直接拷贝过去就能直接使用,无需改动

    我在我的项目文件assets中新建了一个tool.js的文件用来存放公共的方法

    1、tool.js的文件内容如下

    /**
     * @author xxxx
     * @description 保存cookie
     * @param {String} name 需要存储cookie的key
     * @param {String} value 需要存储cookie的value
     * @param {Number} timer 默认存储多少天
     */
    function setCookie(name,value,timer=1){
      var Days = timer; //默认将被保存 1 天
      var exp  = new Date();
      exp.setTime(exp.getTime() + Days*24*60*60*1000);
      document.cookie = name + "="+ escape(value) +";expires="+ exp.toGMTString();
    }
    
    /**
     * @author xxxx
     * @description 获取cookie
     * @param {String} name 需要获取cookie的key
     */
    function getCookie(name){
      var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
      if(arr != null){
        return unescape(arr[2])
      }else{
        return null
      }
    }
    
    /**
     * @author xxxx
     * @description 删除cookie
     * @param {String} name 需要删除cookie的key
     */
    function clearCookie(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 default {
      setCookie,
      getCookie,
      clearCookie
    }

    2、在mian.js文件中引入tool.js并挂载到vue原型上

    // The Vue build version to load with the `import` command
    // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
    import Vue from 'vue'
    import App from './App'
    import router from './router'
    Vue.config.productionTip = false
    
    import tool from './assets/js/tool'
    Vue.prototype.tool = tool;
    
    /* eslint-disable no-new */
    new Vue({
      el: '#app',
      router,
      components: { App },
      template: '<App/>'
    })

    3、使用:在需要存储,读取,删除cookie的页面中

    // 存储cookie
    this.tool.setCookie('sessionId',res.result.sessionId)
    // 取出cookie
    console.log(this.tool.getCookie('sessionId'))
    // 删除cookie
    setTimeout(()=>{
      等待三秒后再删除   
    this.tool.clearCookie('sessionId') },3000)
  • 相关阅读:
    Java1.0-1.11各个版本的新特性
    Java在ServletContextListener、过滤器、拦截器解决对象无法注入问题
    实验七 Web应用测试
    第四次作业
    实验5
    实验4
    实验3
    把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”;
    1. java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()Ljava/lang/Integer;报错问题
    在eclipse中新建maven项目 js,css路径失效问题
  • 原文地址:https://www.cnblogs.com/tlfe/p/12713079.html
Copyright © 2011-2022 走看看