遇到问题
在js文件中封装涉及到使用pinia的方法时,发现和组件内容并不同步,二者是互相独立的。为了方便使用,需要在新建对象的时候,将pinia作为参数传进去
只需要传pinia参数就可以
store/index.js
1 2 3 4 5 6 7 8 9 10 11 | import { defineStore } from "pinia" ; import { createPinia } from 'pinia' export const pinia = createPinia(); export const StoreData = defineStore( 'storeData' ,{ state:()=>( { carList:[], carsMessage:{} } ) }) |
main.js
1 2 3 4 5 | import { pinia } from './store/' ; import App from './App.vue' ; const app = createApp(App); app.use(pinia); app.mount( '#app' ); |
js脚本文件使用
1 2 | import { StoreData,pinia } from "@/store" ; const storeData = new StoreData(pinia); // 必须传参数 pinia |
这样就可以了,如果没有new StoreData(pinia)
传参数,是不会改变的
到此这篇关于vue开发中,在js文件里使用pinia和组件同步的文章就介绍到这了,更多相关vue 使用pinia和组件同步内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!