タイトル通りVue.jsのcomputed、Vuexのgettersの使い分けについてわからないので質問です。
単一コンポーネント+store.jsの運用前提です。
store.jsのstateに管理したいデータを置き、stateの変更をmutationsで行い、App.vue側のcomputedで変更を感知しtemplateが動的に更新される例としてこのようなコードを書いています。下記のような感じです。
storeJs
1const store = new Vuex.Store({ 2 state:{ 3 counter:0 4 }, 5 mutations:{ 6 settingCounter(state){ 7 state.counter ++ 8 } 9 } 10});
Appvue
1 computed:{ 2 counterState(){ 3 return this.$store.state.counter 4 } 5 }, 6 methods:{ 7 counterClick(){ 8 this.$store.commit("settingCounter"); 9 } 10 }
Appvue
1 <p v-on:click="counterClick">カウンターアップ</p> 2 <p>{{counterState}}</p>
しかしcomputedの代わりにstore.js側のgettersで変更を感知し、そのままtemplateにthis.$store.getters.○○等と記載すれば同じように運用することが可能とわかったのですが、使い分けにルールなどあるのでしょうか?
それとも解釈が違うのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/21 11:34