vuex 文档指定您必须将创建的商店传递给 vue 实例,如下所示
new Vue({
el: '#app',
store: store,
})
Run Code Online (Sandbox Code Playgroud)
我的问题是,我使用 CLI 创建了一个新的 vue 项目,并使用 create app 将应用程序安装在 mian.js 中,如下所示:
import App from './App.vue'
const app = createApp(App)
app.mount('#app')
Run Code Online (Sandbox Code Playgroud)
如何使用第二种方法传递商店,以便我可以从任何组件访问它,或者如何使用第一种方法正确安装应用程序?他们之间有什么区别?
根据我的理解createApp(),vue 3 中是新的,我不确定它是如何工作的,我似乎找不到正确的文档,new Vue({})和 之间有什么区别createApp()?
我确信我不理解一些基本概念,但我不知道是哪一个......
谢谢。
您应该使用v4 rccreateStore中的内容vuex,然后调用app.use(store):
商店.js
import { createStore } from 'vuex'
export const store = createStore({
state () {
return {
count: 1
}
}
})
Run Code Online (Sandbox Code Playgroud)
应用程序.js
import { createApp } from 'vue'
import { store } from './store'
import App from './App.vue'
const app = createApp(App)
app.use(store)
app.mount('#app')
Run Code Online (Sandbox Code Playgroud)