vue数据持久化仓库

本文章是一篇记录实用性vue数据持久化仓的使用!

首先在src中创建store文件夹,并创建一个根据本页面相关的名称,

在终端导入:npm i pinia 和 npm i pinia-plugin-persistedstate

接下来引入代码:

Kotlin 复制代码
import { defineStore } from "pinia";
import { order } from "../api/OrderForGoods";
const useOrder = defineStore('order',{
    state:()=>({
        data:[]
    }),
    actions:{
        async getOrder(){
            if(this.data.length ){
                return{data:this.data}
            }else{
                let url = await order()
                console.log(url);
                this.data = url.data
                return{data:url.data}
            }
        }
    },
    persist:{
        enable:true,
        storage:localStorage
    }
})
export default useOrder;

其中import { order } from "../api/OrderForGoods";引入本页面所要存储数据的接口,

import { order } from "../api/OrderForGoods";

这是先给一个初始值。为空,然后判断他啊的长度,data:this.data。这个最后点data,是接口中,返回数据的名称,有可能为res,有可能为list等等。。。

当第一次进入页面的时候会比较慢行。它是读取这个数组,然后将他储存到本地存储上面。等下次再进这个页面的时候,就不会在重新请求数据而产生白屏。

相关推荐
曹绍华12 小时前
kotlin扩展函数是如何实现的
android·开发语言·kotlin
脸大是真的好~12 小时前
黑马JAVAWeb - Maven高级-分模块设计与开发-继承-版本锁定-聚合-私服
java
上去我就QWER12 小时前
Qt中的QShortcut:高效键盘快捷方式开发指南
开发语言·c++·qt
pipip.12 小时前
Redis vs MongoDB:内存字典与文档库对决
数据库·redis·缓存
QT 小鲜肉13 小时前
【C++基础与提高】第二章:C++数据类型系统——构建程序的基础砖石
开发语言·c++·笔记
小白银子13 小时前
零基础从头教学Linux(Day 62)
数据库·mysql·oracle
lsx20240614 小时前
HTML5 新元素
开发语言
她说彩礼65万15 小时前
C# AutoResetEvent和ManualResetEvent
java·jvm·c#
roman_日积跬步-终至千里15 小时前
【Docker多节点部署】基于“配置即身份“理念的 Docker 多节点 StarRocks 高可用集群自动化部署方案
java·docker·微服务
先知后行。16 小时前
C/C++八股文
java·开发语言