Vue - 用Vue-cookie与Vue-cookies处理cookie

Vue-cookie处理cookie

安装:前端项目目录下的终端

npm install vue-cookie --save

配置:main.js

import cookie from 'vue-cookie'
Vue.prototype.$cookie = cookie;

使用:组件的逻辑方法中

created(){
    console.log('组件创建成功');
    let token = 'asdsdfs.sdfsdf.sdfaefw';
    this.$cookie.set('token',token)  // 设置cookie,默认过期时间单位是1d(1天)
    // this.$cookie.set('token',token,10) 过期时间是10天
},
mounted(){
    console.log('组件渲染成功');
    let token = this.$cookie.get('token');  // 获取cookie
    console.log(token);
},
destroyed(){
    console.log('组件销毁成功');
    this.$cookie.delete('token')  // 删除cookie
}

在删除cookie时,执行的两个过程:将cookie值清空,将过期时间往前设置

Vue-cookies处理cookie

安装:前端项目目录下的终端

npm install vue-cookies --save

配置:main.js

import cookies from 'vue-cookies'
Vue.prototype.$cookies = cookies;

使用:组件的逻辑方法中

created(){
    console.log('组件创建成功');
    let token = 'asdsdfs.sdfsdf.sdfaefw';
    this.$cookies.set('token',token)  // 设置cookie,默认过期时间单位是1d(1天)
    // this.$cookies.set('token',token,10) 过期时间是10天
},
mounted(){
    console.log('组件渲染成功');
    let token = this.$cookies.get('token');  // 获取cookie
    console.log(token);
},
destroyed(){
    console.log('组件销毁成功');
    this.$cookies.remove('token')  // 删除cookie
}

概述:

  • 创建:this.$配置时候设置的名称.set('cookies的key',value)
  • 获取指定的key:this.$配置时候设置的名称.get('cookies的key`)
  • 获取所有keys返回为数组的形式:this.$配置时候设置的名称.keys ('cookies的key`)
  • 删除:this.$配置时候设置的名称.remove('cookies的key`)
  • 这里删除如果没有重启浏览器cookies还在的,不过值为空
    • 在删除cookie时,执行的两个过程:将cookie值清空,将过期时间往前设置
    • 重启浏览器cookies才消失
  • 检查某个 cookie name是否存在:this.$配置时候设置的名称.isKey('cookies的key`)

相关配置:

  • 到期时间全局设置

这里是全局的设置所有的cookie都会生效

this.$cookies.config('固定时间') //填的值1d为一天,1h为一小时,1min为一分钟,1s为1秒

//指定时间
this.$cookies.config(new Date(2020,12,1))
this.$cookies.config("Sat, 13 Mar 2017 12:25:57 GMT")

//如果是乘法
this.$cookies.config(60*60) //是60s*60s依次类推

//如果是单单空数组
this.$cookies.config(60) //也是60S
  • 单个cookie设置
//不写过期时间,默认为1天过期
this.$cookies.set("user_session","25j_7Sl6xDq2Kc3ym0fmrSSk2xV2XkUkX")

// 1天过期,忽略大小写
this.$cookies.set("user_session","25j_7Sl6xDq2Kc3ym0fmrSSk2xV2XkUkX","1d")
this.$cookies.set("user_session","25j_7Sl6xDq2Kc3ym0fmrSSk2xV2XkUkX","1D")

// 以秒为单位,设置1天过去
this.$cookies.set("user_session","25j_7Sl6xDq2Kc3ym0fmrSSk2xV2XkUkX",60 * 60 * 24)

// 填写Date对象,明确指定过期时间
this.$cookies.set("user_session","25j_7Sl6xDq2Kc3ym0fmrSSk2xV2XkUkX", new Date(2017, 03, 12))

// 填写一个时间字符串,指定过期时间
this.$cookies.set("user_session","25j_7Sl6xDq2Kc3ym0fmrSSk2xV2XkUkX", "Sat, 13 Mar 2017 12:25:57 GMT")

//浏览器会话结束时过期
this.$cookies.set("default_unit_second","input_value","0");
 
//永不过期
this.$cookies.set("default_unit_second","input_value",-1); 

设置过期时间,输入字符串类型(字符均忽略大小写):

Unit full name
y year
m month
d day
h hour
min minute
s second

猜你喜欢

转载自www.cnblogs.com/863652104kai/p/11443979.html