vuejs怎么结合pinia
插件,下面编程教程网小编给大家详细介绍一下!
1、安装pinia脚手架
yarn add pinia -S
2、main.js引入
import {createApp} from "vue"
import App from "./app.vue"
import store from "./store/index.js"
const app = createApp(App);
const store = createPinia();
app.use(store).mount("#app")
3、在store文件夹下新建test.js
import {definePinia} from "pinia"
export default testStore = definePinia('testId',{
state:()=>{
tname:"test",
tnum:0,
},
getters:{
changeTnum(){
console.log("getters")
this.tnum++;
}
},
actions:{
addNum(val){
this.tnum += val
}
},
//持久化存储配置
presist:{
enable:true,
strategies:[
{
key:"testId",
storage:localStorage,
paths:['tnum']
}
]
}
})
4、在store文件夹下新建index.js
import {createPinia} from "pinia"
const store = createPinia();
export default store
5、新建vue组件
<template>
<div>
<div> {{tname}}</div>
<div> {{tid}}</div>
<div> tnum: {{tnum}}</div>
<div> {{tchangeNum}}</div>
<div><button @click="tchangeName">修改</button></div>
<div> <button @click="treset">重置</button></div>
<div @click="actionsBtn">actionsBtn</div>
</div>
</template>
<script setup>
import { storeToRefs } from 'pinia'
import { useStore } from '../store/user'
import { useTest } from '../store/test.js'
const testStore = useTest();
let { tname, tchangeNum, tnum } = storeToRefs(testStore)
</script>
//直接修改数据
tchangeName(){
tname.value = "测试数据";
tnum.value++;
}
//当然也可以使用`$path`批量修改
tchangeName(){
testStore.$path(state=>{
state.tname = "测试数据";
state.value = 7;
})
}
以上是编程学习网小编为您介绍的“vuejs怎么结合pinia插件”的全面内容,想了解更多关于 vuejs 内容,请继续关注编程基础学习网。
沃梦达教程
本文标题为:vuejs怎么结合pinia插件


猜你喜欢
- jQuery Ajax显示对号和错号用于验证输入验证码是否正确 2023-02-01
- vue实现tab选项卡 2023-10-08
- css cursor 的可选值(鼠标的各种样式) 2024-01-05
- ajax上传多图到php服务器的方法 2023-02-15
- JavaScript模拟实现”双11″限时秒杀效果 2024-01-14
- JS滚动到顶部踩坑解决记录 2023-07-10
- 第5天:head区的其他设置 2022-11-04
- js如何判断用户是在PC端和还是移动端访问 2024-01-16
- 在el-table表头添加icon图标,鼠标经过显示el-tooltip提示内容 2024-12-08
- div三栏布局左中右通过float浮动来设置 2024-02-06