vue开发中如何在js文件里使用pinia和组件同步
更新时间:2024年10月17日 09:59:41 作者:从来风花雪月无常
在JavaScript文件中封装涉及到使用Pinia的方法时,发现Pinia和组件内容并不同步,二者的状态是独立的,解决办法是,在新建对象的时候,将Pinia作为参数传入,本文给大家介绍vue开发中如何在js文件里使用pinia和组件同步,感兴趣的朋友一起看看吧
遇到问题
在js文件中封装涉及到使用pinia的方法时,发现和组件内容并不同步,二者是互相独立的。为了方便使用,需要在新建对象的时候,将pinia作为参数传进去
只需要传pinia参数就可以
store/index.js
import { defineStore } from "pinia";
import { createPinia } from 'pinia'
export const pinia = createPinia();
export const StoreData = defineStore('storeData',{
state:()=>(
{
carList:[],
carsMessage:{}
}
)
})main.js
import { pinia } from './store/';
import App from './App.vue';
const app = createApp(App);
app.use(pinia);
app.mount('#app');js脚本文件使用
import { StoreData,pinia } from "@/store";
const storeData = new StoreData(pinia);// 必须传参数 pinia这样就可以了,如果没有new StoreData(pinia)传参数,是不会改变的
到此这篇关于vue开发中,在js文件里使用pinia和组件同步的文章就介绍到这了,更多相关vue 使用pinia和组件同步内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
vue结合el-dialog封装自己的confirm二次确认弹窗方式
这篇文章主要介绍了vue结合el-dialog封装自己的confirm二次确认弹窗方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-08-08
vue3中$attrs的变化与inheritAttrs的使用详解
$attrs现在包括class和style属性。 也就是说在vue3中$listeners不存在了,vue2中$listeners是单独存在的,在vue3 $attrs包括class和style属性, vue2中 $attrs 不包含class和style属性,这篇文章主要介绍了vue3中$attrs的变化与inheritAttrs的使用 ,需要的朋友可以参考下2022-10-10


最新评论