了解です!
ではそのまま続けて 第3章 3.3 型付きuseStoreの作り方(コンポーザル関数useCounterStore.ts
の設計) に入ります。
useCounterStore.ts
の設計)ここでは、
Vuex の
store.state.count
store.commit('increment')
を 毎回生で書くのではなく、関数でラップする ことで、
できる コンポーザル関数 を作ります。
なぜ必要? | 説明 |
---|---|
'increment' のtypo防止 |
毎回文字列を書かず、関数名で呼び出す |
型安全 | state, mutation, action の型が補完される |
コードがスッキリ | 各コンポーネントが簡単に Vuex を使える |
再利用性UP | どの画面でも同じ関数を使い回せる |
export interface State {
count: number;
}
export default new Vuex.Store<State>({
state: {
count: 0,
},
mutations: {
increment(state) {
state.count += 1;
},
},
actions: {
increment({ commit }) {
commit('increment');
},
},
});