首页 > 其他分享 >pinia在登录页面持久化存储

pinia在登录页面持久化存储

时间:2024-03-19 15:15:14浏览次数:23  
标签:存储 createPinia pinia token Pinia import store 页面

  • 安装pinia npm install pinia
  • 创建一个store/index.js
import { createPinia } from 'pinia'
//从pinia模块导入createPinia函数。Pinia是Vue.js的一个状态管理库,createPinia函数用于创建一个新的Pinia实例
import piniaPluginPersist from 'pinia-plugin-persist'
//pinia-plugin-persist是一个Pinia的插件,用于持久化store的状态。

const store = createPinia()
//使用createPinia函数创建一个新的Pinia实例,并将其赋值给store变量

store.use(piniaPluginPersist)
//在创建的Pinia实例上使用piniaPluginPersist插件。这意味着Pinia store的状态将被持久化,即使在页面刷新后,状态也会被保留。

export default store
//导出store变量。这样,其他模块就可以导入并使用这个store了
  • 在main.js中
import store from "./store";
createApp(App).use(store).mount("#app");
  • store/user.js中
import { defineStore } from "pinia";
export const useUserStore = defineStore({
  id: "user",
  //id,模块名称
  state: () => {
    return {
      token: "",
    };
  },
  actions: {
    setToken(token) {
      this.token = token;
    },
  },
  // 开启数据缓存
  persist: {
    enabled: true,
    //表示开启持久化保存
    strategies: [
      {
        key: "user",
        storage: localStorage,
        //paths: ['token']
      },
    ],
  },
});

  • 在vue中使用的时候
//pinia
import { useUserStore } from "../store/user";
const userStore = useUserStore();
//在需要存储的地方
userStore.setToken(res.data.accessToken);

标签:存储,createPinia,pinia,token,Pinia,import,store,页面
From: https://www.cnblogs.com/zongkm/p/18082864

相关文章

  • mysql存储过程查询结果循环遍历 判断 赋值 游标等基本操作
    时间:2018-03-2617:58:45一、首先说下本篇博客所实现功能的背景和功能是怎样的:   背景:因为公司项目开始迁移新平台项目,所以以前的平台老数据以及订单信息需要拆分表,而且需要业务逻辑来分析以前的订单表,来拆分成另外的几个新表,包括增加新的流水分析,以及更新其他用户或者......
  • Mysql带返回值与不带返回值的2种存储过程
    时间:2018-03-3000:25:57过程1:带返回值:dropprocedureifexistsproc_addNum;createprocedureproc_addNum(inxint,inyint,outsumint)BEGINSETsum=x+y;end然后,执行过程,out输出返回值:callproc_addNum(2,3,@sum);select@sum;过程2:不带返回值:dropp......
  • 数据在内存中的存储
    目录前言一、整数在内存中的存储二、大小端字节序和字节序判断1、什么是大小端?2、为什么有大小端?3、练习三、浮点数在内存中的存储前言本章我们学习一下数据在内存中是如何存储的,包含整数在内存中的存储、大小端字节序和字节序判断、浮点数在内存中的存储三个部分......
  • 【Lazy ORM】 小工具 acw 本地客户端 你负责点击页面,他负责输出代码
    介绍wu-smart-acw-client简称acw-client,是一个基于LazyORM定制的客户端代码生成小工具LazyORM小工具acw本地客户端你负责点击页面,他负责输出代码安装<dependency><groupId>top.wu2020</groupId><artifactId>wu-smart-acw-cli......
  • 复制粘贴的一个关于int和float在计算机中存储的答案
    同样是占32个坑,凭啥你float就比int的范围更大?  ok,这里先说明一下,假设是在32位的机器上,int是32位。而float使用的是IEEE754标准的单精度浮点数格式也是占用32位。这时候float和int都是占用32位,占用同样的空间,但float范围是更大的,那我们为啥还要int呢?为啥......
  • Git 仓库瘦身与 LFS 大文件存储
    熟悉Git的小伙伴应该都知道随着Git仓库维护的时间越来越久,追踪的文件越来越多,git存储的objects数量会极其庞大,每次从远程仓库gitclone的时候都会墨迹很久。如果我们不小心gitadd了一个体积很大的文件,且gitpush到了远程仓库,那么我们gitclone的时候也会很慢。看......
  • 【Django开发】0到1美多商城项目md教程第2篇:展示用户注册页面,1. 创建用户模块子应用
    美多商城完整教程(附代码资料)主要内容讲述:欢迎来到美多商城!,项目准备。展示用户注册页面,创建用户模块子应用。用户注册业务实现,用户注册前端逻辑。图形验证码,图形验证码接口设计和定义。短信验证码,避免频繁发送短信验证码。账号登录,用户名登录。登录,登录开发文档。用户基本信息,查询......
  • 第三章页面布局总结
    目录一.盒子模型 二.块级元素与行内元素1.块级元素​ 2.行内元素​3.行内块元素三.浮动与定位 1.元素浮动与清除​2.元素定位四.flex布局 1.容器属性(1)display(2)flex-direction(3)flex-wrap(4)flex-flow(5)justify-content(6).align-items(7).align-con......
  • 威联通(QNAP) TS-466C NAS 开箱评测,4盘位NAS,N6005,存储服务器
    威联通(QNAP)TS-466C四盘位NAS(NetworkAttachedStorage:网络附属存储)开箱评测之前用的TS-551经过几轮系统升级后明显感觉性能跟不上了,变卡了,所以升级一下,换了TS-466C。威联通迁移NAS还挺方便的,只有将原先NAS里的硬盘取出来按顺序插入新NAS后直接开机就行,系统里的东......
  • vue页面纯前端导出excel表格(多级表头,exceljs)
    查找对比因为是第一次实现这样的功能,先在网上进行了查找,发现了三种比较常用的方法:1.安装file-saverxlsxscript-loader如果想设置表格样式的话,需要同时安装依赖xlsx-style,通常情况下安装此依赖会报错,需要进行修改;2.安装vue-json-excel这个插件看起来比较好上手,但是好像只......