Nuxt引用cookie-universal-nuxt在服务端请求cookie方式
作者:明知山_
这篇文章主要介绍了Nuxt引用cookie-universal-nuxt在服务端请求cookie方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Nuxt引用cookie-universal-nuxt在服务端请求cookie
npm install cookie-universal-nuxt -s
在nuxt.config.js
添加
modules: [ 'cookie-universal-nuxt' ],
设置cookie
this.$cookies.set('token', 123456)
获取cookie
this.$cookies.get("token")
清除cookie
this.$cookies.remove('token')
在asyncData
获取
async asyncData({ app }) { console.log(app.$cookies.get("token")); },
nuxt cookie-universal-nuxt 搭配 vuex-persistedstate 做数据持久化
因为服务端不存在 Local Storage 和 Session Storage
所以 便使用了 cookie-universal-nuxt 这个插件
在做Nuxt项目的时候 发现Vuex 在刷新页面后 储存的数据丢失
用 vuex-persistedstate 来持久化数据
cookie-universal-nuxt 安装
cookie-universal-nuxt 的安装
npm install cookie-universal-nuxt -s
打开 nuxt.config.js 文件
在 modules 下添加
modules: [ ? ? // https://go.nuxtjs.dev/axios ? ? 'cookie-universal-nuxt' ? ],
更多使用方法请点击 传送门
vuex-persistedstate安装
安装命令
npm install vuex-persistedstate --save
配合 cookie-universal-nuxt 使用
在 plugins文件夹下新建 文件 persistedState.js
import createPersistedState from 'vuex-persistedstate' export default ({ app, store }) => { createPersistedState({ storage: { getItem: (key) => app.$cookies.get(key), setItem: (key, value) => app.$cookies.set(key, value, { path: '/', maxAge: 60 * 60 * 24 * 1 // cookie存储时间 可修改 }), removeItem: (key) => app.$cookies.remove(key) } })(store) }
打开 nuxt.config.js 文件
在 piugins 模块下进行导入
plugins: [ '@/plugins/persistedState', ],
到此 使用 cookie就可以进行持久化储存
使用方式
this.$cookies.set('token', 'XXXXXXXXXXXXXXXXXXXX')
就正常的使用 cookie-universal-nuxt 的方式即可
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。