2017-10-13 50 views
0

我想出口Vuex模塊象下面這樣:如何導出模塊中Vuex

export { 
    state, 
    mutations, 
    actions, 
    getters 
} 

,但是當我試圖把它列入我的索引文件時,它拋出錯誤。與類型不兼容的東西。我想我應該指定上述對象的類型,但我不知道它是什麼類型。

import * as itemsModule from './app/store/items/module' 

let store = new Vuex.Store({ 
    modules: { 
     items: itemsModule 
    } 
}); 

拋出:

是不能分配給類型的參數 'StoreOptions < {}>'。 屬性「模塊」的類型不兼容。

問候

+0

這是第一個導出導出對象嗎?比如'state:{..myStates}'等等。假設你正在導出適當的狀態,突變,行爲和獲取者,我不明白爲什麼會提出這個問題。你可以粘貼模塊的其餘代碼嗎?我以前用'export default {state:{},...}來導出模塊爲默認模式''我不知道'as itemsModule'的行爲如何,也許這會導致不兼容。嘗試檢查itemsModule的外觀 – cassioscabral

回答

3

要導入和導出的方式是不正確的。 嘗試這種方式:

module.js

export default { 
    state, 
    mutations, 
    actions, 
    getters 
} 

store.js

import itemsModule from './app/store/items/module' 

解釋: 你導入模塊的方式,你得到這樣的對象:

{ 
    default: { 
    actions: {/** ... */} 
    getters: {/** ... */} 
    mutations: {/** ... */} 
    state: {/** ... */} 
    } 
} 

這不是商店所期望的模塊結構。