遇到問題
在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)
傳引數,是不會改變的