快速上手vue前端存储库、全局状态管理工具pinia
pinia是什么,为什么我们要使用pinia?
- pinia是vue全局状态管理工具,类似vueX,用于全局的数据状态存储、修改变更等等
- 相较于vueX,pinia的使用较为简单,轻量级,上手容易,干掉了vueX的层层套娃
快速安装配置pinia
- 安装依赖 npm install pinia
- 创建一个store
// 创建一个store文件,对全局属性、方法变量进行管理
import { defineStore } from "pinia"; //defineStore返回一个函数进行调用,参数一为命名,即存储在本地的名称,参数二是对应的配置
//state 用于变量的存储,getters是计算属性,action是方法集合,同步异步方法均可执行
export const useStore = defineStore('store', {
state:()=>({
count:0,
}),
getters:{ },
actions:{
increaseCount(){
this.count++;
}
}
}) - 挂载pinia到vue上,vue js入口文件,main.js中操作
import { createPinia } from 'pinia';
app.use(createPinia());
如何使用pinia
//在需要使用的组件中,引入刚才导出的变量 useStore,注意,该变量是defineStore返回的函数
import { useStore } from './store';
const authStore = useStore();
// 使用变量
console.log(authStore.count);
// 调用方法
authStore.increaseCount();数据持久化操作,避免页面刷新,数据就没了
- 这里推荐插件 pinia-plugin-persistedstate
// 安装依赖 npm install pinia-plugin-persistedstate // 在挂载pinia到vue前,配置持久化,main.js入口文件中操作
import { createPinia } from 'pinia';
// 引入持久化插件
import { createPersistedState } from 'pinia-plugin-persistedstate';
const pinia = createPinia();
pinia.use(createPersistedState({
serializer: { // 指定参数序列化器
serialize: JSON.stringify,
deserialize: JSON.parse,
}
}));
app.use(pinia);// 挂载pinia// 创建一个store文件,对全局属性、方法变量进行管理
import { defineStore } from "pinia"; //defineStore返回一个函数进行调用,参数一为命名,参数二是对应的配置
//state 用于变量的存储,getters是计算属性,action是方法集合,同步异步方法均可执行
export const useStore = defineStore('store', {
state:()=>({
count:0,
}),
getters:{ },
actions:{
increaseCount(){
this.count++;
}
},
// 持久化配置
persist: {
key: 'store',//存储本地的名字
storage:window.localStorage,//存储地址,可选sessionStorage
paths:['count'],//需要持久化的变量
},
})
快速上手vue前端存储库、全局状态管理工具pinia的更多相关文章
- 小程序全局状态管理,在页面中获取globalData和使用globalSetData
GitHub: https://github.com/WozHuang/mp-extend 主要目标 微信小程序官方没有提供类似vuex.redux全局状态管理的解决方案,但是在一个完整的项目中各组件 ...
- Mobx | 强大的状态管理工具 | 可以用Mobx来替代掉redux
来源简书 电梯直达 https://www.jianshu.com/p/505d9d9fe36a Mobx是一个功能强大,上手非常容易的状态管理工具.就连redux的作者也曾经向大家推荐过它,在不少情 ...
- 状态管理工具对比vuex、redux、flux
1.为什么要使用状态管路工具 在跨层级的组件之间传递信息,尤其是复杂的组件会非常困难.也不利于开发和维护,这时我们就a需要用到状态管理工具. 2.Flux
- React的状态管理工具
Mobx-React : 当前最适合React的状态管理工具 MobX 简单.可扩展的状态管理 MobX 是由 Mendix.Coinbase.Facebook 开源和众多个人赞助商 ...
- 前端MVC Vue2学习总结(八)——Vue Router路由、Vuex状态管理、Element-UI
一.Vue Router路由 二.Vuex状态管理 三.Element-UI Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint U ...
- vue组件化开发-vuex状态管理库
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具 ...
- 微信小程序全局状态管理 wxscv
微信小程序中,数据状态不同页面中不能跨页面同步更新,也就是缺失类似vuex,mobx,redux全局的数据状态管理功能. 有些人移植了这些库,但是毕竟不是微信小程序生态的东西. Tencent也发布了 ...
- 轻量级状态管理库Pinia试吃
最近连续看了几个GitHub上的开源项目,里面都用到了 Pinia 这个状态管理库,于是研究了一下,发现确实是个好东西!那么,Pinia 的特点: 轻量化 -- Pinia 体积约1KB,十分轻巧 ...
- vuex状态管理工具
父子组件之间的通信 props传递 父 向子单向传递:且每次 父组件更新时 子组件的props会跟着更新: 如果需要 子组件把数据传递给父组件,就需要在子组件上绑定自定事件 在子组件使用this ...
- Mobx-React : 当前适合React的状态管理工具
MobX 简单.可扩展的状态管理 MobX 是由 Mendix.Coinbase.Facebook 开源和众多个人赞助商所赞助的. 安装 安装: npm install mobx ...
随机推荐
- python进阶(29)单例模式
初识单例模式 单例模式含义 单例模式,也叫单子模式,是一种常用的软件设计模式.在应用这个模式时,单例对象的类必须保证只有一个实例存在.许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整 ...
- docker给已存在的容器添加或修改端口映射
简述: 这几天研究了一下docker, 发现建立完一个容器后不能增加端口映射了,因为 docker run -p 有 -p 参数,但是 docker start 没有 -p 参数,让我很苦恼,无奈谷歌 ...
- 4.5:HDFS操作实验
〇.概述 1.拓扑结构 2.目标 进行HDFS的实验,了解HDFS的基本操作. 一.常用操作 1.启动 50070 2.查看及创建 3.上传文件
- 3.8:使用R语言实现Apriori算法示例
〇.目标 1.使用R语言实现Apriori算法完成关联规则挖掘:2.利用超市购物篮Groceries数据进行关联规则分析. 一.利用arules包加载Groceries数据集 二.探索和准备数据 三. ...
- Mybatis源码解析之执行SQL语句
作者:郑志杰 mybatis 操作数据库的过程 // 第一步:读取mybatis-config.xml配置文件 InputStream inputStream = Resources.getResou ...
- 浅谈promise对象
背景: 最近项目在做小程序的开发,涉及设计一个统一的登录公共方法,当实现时涉及到多个异步请求,那么问题来了,如何让多个异步请求先后同步进行呢?很多人会想到使用多层嵌套套来实现,就像这样: functi ...
- Linux命令篇 - nc(ncat) 命令
nc (ncat) Ncat is a feature-packed networking utility which reads and writes data across networks fr ...
- MarkDown语法----纯文本格式的标记语言
一.基本语法 1.标题 一级标题: "# + 空格 + 标题内容" 二级标题: "## + 空格 + 标题内容" .... 2.字体 粗体: "**+ ...
- spark任务报错java.io.IOException: Failed to send RPC xxxxxx to xxxx:xxx, but got no response. Marking as slave lost.
## 日志信息如下 ``` Attempted to get executor loss reason for executor id 17 at RPC address 192.168.48.172 ...
- 《机器人SLAM导航核心技术与实战》第1季:第4章_机器人传感器
<机器人SLAM导航核心技术与实战>第1季:第4章_机器人传感器 视频讲解 [第1季]4.第4章_机器人传感器-视频讲解 [第1季]4.1.第4章_机器人传感器_惯性测量单元-视频讲解 [ ...