Vue3中怎么全局注册仓库store
时间: 2024-05-02 09:19:46 浏览: 8
可以使用Vue3的新特性provide和inject来实现全局注册仓库store,具体步骤如下:
1. 在仓库文件中使用provide将仓库对象暴露出去,例如:
```javascript
import { reactive } from 'vue'
const store = reactive({
count: 0,
increment() {
store.count++
},
decrement() {
store.count--
}
})
export const provideStore = () => {
provide('store', store)
}
```
2. 在应用入口文件中使用inject获取仓库对象,例如:
```javascript
import { createApp } from 'vue'
import App from './App.vue'
import { provideStore } from './store'
const app = createApp(App)
// 注册仓库
provideStore()
app.mount('#app')
```
3. 在组件中可以使用inject获取仓库对象并调用仓库中的方法,例如:
```javascript
import { inject } from 'vue'
export default {
setup() {
// 获取仓库对象
const store = inject('store')
return {
store
}
}
}
```
通过以上步骤即可实现Vue3中全局注册仓库store。