Vuexとは
コンポーネントが共有するデータの状態を、グローバルに管理するライブラリ。
storeと呼ばれるアプリケーションのデータの状態を保持するコンテナを使用して、
コンポーネントとデータの取得・保存を行う。
storeの4つの機能
state
アプリケーション全体のデータの状態を管理。
データの状態を確認したり、特定のデータの状態を見つけることができる。
mutations
stateの更新だけを行う。
actionsを通じてコミット(実行)される。
データの変更をデバッグするとき、mutationsのおかげでデバッグが容易になる。
actions
mutationsの呼び出しやAPIとの非同期通信を行う。
※actions自体は直接stateを変更できない。
getters
computedと同様の動きをして、stateの値を算出したものを返す場合に役立つ。
値がキャシュされ、gettersが依存しているstateが更新されない限り再評価しない。
相関図
まとめ
必ず、mutationsを通じてstateを変更する。
4つの機能に分けたことで、データの流れを追いやすくデバッグのしやすい状態管理を実現できる。
