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等等。。。

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

相关推荐
baidu_3409988212 小时前
SQL多维度数据聚合技巧_利用GROUP BY WITH ROLLUP实现
jvm·数据库·python
m0_7436239213 小时前
Python如何计算NumPy数组的协方差矩阵_调用cov函数进行特征分析
jvm·数据库·python
qq_3806191613 小时前
Layui表格怎么隐藏指定列
jvm·数据库·python
214396513 小时前
mysql如何通过yum源快速安装_mysql官方yum安装教程
jvm·数据库·python
c***892013 小时前
python爬虫——爬取全年天气数据并做可视化分析
开发语言·爬虫·python
qq_6543669813 小时前
mysql如何选择存储引擎_mysql MyISAM与InnoDB深度对比
jvm·数据库·python
214396513 小时前
MySQL升级如何回滚到旧版本_灾难恢复方案与快照备份恢复
jvm·数据库·python
qq_3721542313 小时前
HTML怎么处理右键菜单_HTML contextmenu自定义(已废弃)替代方案【指南】
jvm·数据库·python
treacle田13 小时前
达梦数据库-数据库审计02-记录总结
数据库·达梦数据库·数据库对象级审计
aq553560013 小时前
C语言、C++和C#:三大编程语言核心差异详解
java·开发语言·jvm