2016-08-01 7 views
2

かなり大きなプロジェクトを進めており、できるだけ多くの部分にVuexモジュールを割愛したいと思います。たとえば、APIの機能をUIから分離して、サーバーからのデータをコンポーネントのフラグなどと分離したままにします。Vuexを使用したきめ細かな構成

ドキュメント(http://vuex.vuejs.org/en/structure.html)では、著者はすべてをmodulesに分割することを提案します。これは素晴らしい方法です。問題は、私が持っているとき、つまり、productsをページ、productsをデータとし、それらを分離しておきたいときです。

{ 
    modules: { 
    api: { 
     products: // ... 
    }, 
    pages: { 
     products: // ... 
    } 
    } 
} 

store.api.productsstore.pages.productsのようにそれらにアクセスすることができ:

それはこのような何かを達成することは可能ですか?私は間違っていますか?

ありがとうございます!

答えて

3

私はvuexコードを見て取ってきたと私は、この発見した:

{ 
    modules: { 
    api: { 
     modules: { 
     products: /* ... */ 
     } 
    }, 
    components: { 
     modules: { 
     page: /* ... */ 
     } 
    } 
    } 
} 
を:それはあなたが実際に実行して、 vuexモジュールの顆粒を作ることができることが判明し

// retrieve nested modules 
const nestedMutations = this._createModuleMutations(module.modules, newNestedKeys) 

これは次のような状態構造になります。

Vuex State screenshot

+0

件名の周りにいくつかの議論があります:http://forum.vuejs.org/topic/4791/granular-organisation-with-vuex –

関連する問題