第一步:安装pinia
npm install pinia --save-dev
第二步:在app中注册pinia
import { createApp } from 'vue'
import App from './App.vue'
import { createPinia } from 'pinia';
const app = createApp(App);
app.use(createPinia());
app.mount('#app')
第三步:store/count.ts
import { defineStore } from 'pinia'
export const useCountStore = defineStore('count',{
state: ()=> ({
num: 1
}),
getters:{
double:function(state:any):any{
return state.num *2
},
},
actions:{
increment(){
this.num ++
}
}
})
第四步:在组件中引用
<template>
<div class="page-container">
<div class="footer-container">
<h1>{{countStore.num}}</h1>
<div @click="countStore.increment">加1</div>
</div>
</div>
</template>
<script>
import { useCountStore } from './store/count'
export default{
setup(){
const countStore = useCountStore();
console.log(countStore);
return {
countStore
};
}
}