pinia封装

store.ts

点击查看代码
import { createPinia } from 'pinia'
import piniaPersist from 'pinia-plugin-persist'
const pinia = createPinia()
pinia.use(piniaPersist)
export default pinia
export * from './counter'
export * from './menu'

main.ts

点击查看代码
import '@/styles/index.scss'
import 'element-plus/dist/index.css'
import { createApp } from 'vue'

import App from './App.vue'
import router from './router'
import '@/router/permission'
// 如果您正在使用CDN引入,请删除下面一行。
import * as ElementPlusIconsVue from '@element-plus/icons-vue'
import { auth } from '@/directive'
import pinia from '@/stores'

const app = createApp(App)
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)
}

app.use(pinia)
app.use(router)
app.directive('auth', auth)
app.mount('#app')

因为实际项目中引用顺序会导致pinia的状态在其他地方获取不到,所以直接封装成单独文件,main引入
posted @ 2023-09-04 22:20  jialiangzai  阅读(123)  评论(0)    收藏  举报