当前位置: 首页 > news >正文

Vue3-Pinia快速入门

1.安装pinia

npm install pinia -save

2.在main.js中导入并使用pinia 

// 导入piniaimport { createPinia } from "pinia";
const pinia = createPinia();//使用pinia
app.use(pinia)app.mount('#app')

 3.在src目录下创建包:store,表示仓库

4.在store里面创造一个airTicket.js,用来存放搜索机票相关数据或者函数

//定义关于counter的store
import { defineStore } from 'pinia'//defineStore 是返回一个函数 函数命名最好有use前缀,根据函数来进行下一步操作
const useSearchAir = defineStore('airTicket',{state: () => {return{departPoint:"",arrivePoint:"",departTime:"",arriveTime:"fdsa",}},// 修改方法actions: {setName(name){this.departPoint = name;},setPassword(p){this.password = p;},setPhone(p){this.phone = p;}}
})export default useSearchAir()

5.导入仓库:

import useSearchAir from "@/store/airTicket";
let useAirTicket = useSearchAir;

6.进行相关操作:

比如:

修改数据,打印数据

//修改数据,
useAirTicket.$patch({arrivePoint:"改革发u",arriveTime:"213234"})//打印数据
console.log(useAirTicket.arrivePoint)

8.注意事项

对仓库里面的数据操作不能直接解构,

比如这样

const {arrivePoint, arrivvTime} = useAirSearch

这样使用就比较方便,但是这样的话这2个结构出来的数据就不具备响应性了

如果要解构,需要这样:

 import { storeToRefs } from 'pinia'const {arrivePoint, arrivvTime} = storeToRefs(useAirSearch)


这样就保留了响应性


 

http://www.lryc.cn/news/219152.html

相关文章:

  • Python算法——插入排序
  • Java21新特性
  • 4 Tensorflow图像识别模型——数据预处理
  • SpringBoot整合RabbitMQ学习笔记
  • 在校园跑腿系统小程序中,如何设计高效的实时通知与消息推送系统?
  • 求极限Lim x->0 (x-sinx)*e-²x / (1-x)⅓
  • JavaScript数据类型详细解析与代码实例
  • .NET Framework中自带的泛型委托Func
  • 深入理解JVM虚拟机第十七篇:虚拟机栈中栈帧的内部结构
  • uniapp中地图定位功能实现的几种方案
  • JS功能实现
  • connect-history-api-fallback原理
  • Android ConstraintLayout分组堆叠圆角ShapeableImageView
  • Docker Stack部署应用详解+Tomcat项目部署详细实战
  • Compose-Multiplatform在Android和iOS上的实践
  • XXL-JOB 默认 accessToken 身份绕过导致 RCE
  • 7 库函数之复位和时钟设置(RCC)所有函数的介绍及使用
  • 第十七节——指令
  • 优雅的 Dockerfile 是怎样炼成的?
  • 2023-2024 中国科学引文数据库来源期刊列表(CSCD)
  • 【3D图像分割】基于Pytorch的VNet 3D图像分割5(改写数据流篇)
  • WebSocket Day02 : 握手连接
  • c#的反编译工具ISPY和net reflector 使用比较
  • 基于LDA主题+协同过滤+矩阵分解算法的智能电影推荐系统——机器学习算法应用(含python、JavaScript工程源码)+MovieLens数据集(四)
  • 方阵行列式与转置矩阵
  • 【Java 进阶篇】Java Cookie共享:让数据穿越不同应用的时空隧道
  • 甘特图组件DHTMLX Gantt用例 - 如何拆分任务和里程碑项目路线图
  • 克里金插值matlab代码
  • 【LeetCode】23. 合并 K 个升序链表
  • 2023年【熔化焊接与热切割】免费试题及熔化焊接与热切割考试总结