私はいくつかのモジュールを持っていますvuex
。簡単にするために、私は私が直面しています何の例と私の問題を説明します:異なるモジュールの突然変異のrootStateにアクセス
私は2 vuex
モジュールfirstModule.jsとを持ってsecondModule.js
firstModule.jsがmyArray[ ]
を持っていますその状態で:secondModule.jsで
//firstModule
const state = {
myArray: [//has some items]
}
私はエクステルから非同期いくつかのデータをフェッチする作用を有しますAPI。
このアクションは、その後secondModuleのnewArray[ ]
に追加し、フェッチされたデータは、firstModuleのmyArray[ ]
に存在する場合、フェッチされたデータは、firstModuleのmyArray[ ]
に存在しているかどうかを検索する変異をコミット
const state = { newArray: [] } const mutations = { addToNewArray: (state, payload) => { function findIyem(value){ return value === payload.data; }; var item = payload.rootData.myArray.find(findItem); state.newArray.push(payload.data); } } const actions = { fetchData: ({commit, rootState}) => { // fetches some data from external API var fetched data = data // data is which I received from fetching commit('addToAnotherArray', {data: data, rootData: rootState.firstModule.myArray} } }
しかし、ここで問題です:
モジュールでdocs変異に応じrootStateへのアクセスを得ることはありません、アクションのみとゲッターがへのアクセスを取得rootState
なし突然変異のrootAtateへのアクセス、私は上記のようにロジックを実行することができますか?
アクションでrootStateにアクセスし、上で行ったようにコミットされた突然変異をコミット突然変異に渡す必要がありますか?