Vuex
Vuexとは
Vue.js アプリケーションのための 状態管理パターン + ライブラリ
予測可能な方法によってのみ状態の変異を行うというルールを保証し、アプリケーション内の全てのコンポーネントのための集中型のストアとして機能
Vue 公式の開発ツール拡張と連携し、設定なしでタイムトラベルデバッグやステートのスナップショットのエクスポートやインポートのような高度な機能を提供
https://vuex.vuejs.org/flow.png
アプリが自身に含む要素
状態
アプリを動かす信頼できる情報源(the source of truth)
ビュー
状態のただの宣言的なマッピング
アクション
ビューからのユーザー入力に反応し、状態の変更を可能にする方法
コンポーネントから共有している状態を抽出し、一元的に管理する
コンポーネントツリーは大きな "ビュー" となり、どのコンポーネントもツリー内のどこにあっても状態にアクセスしたり、アクションをトリガーできる
状態管理に関わる概念を定義、分離し、特定のルールを敷くことで、コードの構造と保守性を向上
https://vuex.vuejs.org/vuex.png