了解です!
ではそのまま続けて 第5章 5.1 なぜコンポーザル関数が必要なのか? に進みます。
ここでは、「なぜわざわざコンポーザル関数(useCounterStore.ts
など)を作るのか?」 その理由とメリットを整理します。
目的 | コンポーザル関数で得られること |
---|---|
タイポ防止 | mutation名やaction名を関数名で管理できる |
型安全 | 引数や返り値の型が補完される |
コードの短縮 | 毎回 store.commit('xxx') と書かなくてよい |
再利用性 | どのコンポーネントでも同じ関数が使える |
読みやすさUP | 親コンポーネントがシンプルになる(Vuexの存在を意識しない) |
保守性UP | mutation名変更時に一か所直すだけで済む |
store.commit('increment');
store.commit('increment');
store.commit('increment');
'increment'
を文字列で書く → スペルミスしても気づきにくいconst { increment } = useCounterStore();
increment();
increment();
increment();
commit('increment')
か dispatch('increment')
かは隠せる → 利用者は気にしなくてOK