1.说明
uniapp
自带pinia
,我们并不需要额外去安装,但是要在main.js
中引入。
2.引入pinia
打开main.js
,没有引入uviewplus
需要先引入。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| import uviewPlus from 'uview-plus'
import * as Pinia from 'pinia'; import { createSSRApp } from 'vue' export function createApp() { const app = createSSRApp(App) app.use(uviewPlus) app.use(Pinia.createPinia()); return { app, Pinia } }
|
3.使用
在根目录下创建store
目录,在store
目录下新建user.js
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| import { defineStore } from 'pinia'
const useUserStore = defineStore('User', { state: () => { return { count: 0 } } })
export default useUserStore
|
在某个页面我们去写个事件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <template> <view> <up-button type="primary" :plain="true" :hairline="true" text="细边" @click="add()">{{ useStore.count }}</up-button> </view> </template>
<script setup> import useUserStore from '@/store/user.js' const useStore = useUserStore() const add = () => { console.log(useStore.count++); } </script>
|
自行测试: