JavaScript - vueのstateの値を変更する
迷茫
迷茫 2017-07-05 10:51:19
0
1
1009

アクションが非同期処理を処理することは知っています。非同期操作はありません。つまり、ボタンをクリックした後、アクションや変更を行わずに、状態の値がメソッド内で直接変更されるということです。これは準拠していますか? vueの仕様?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信(1)
过去多啦不再A梦

ミューテーションメソッドを直接呼び出したり、状態属性を直接変更したりできないのに、コミットを通じてミューテーションを送信する必要がある理由について?公式ドキュメントからの引用:

もう一度言いますが、状態の変化をより明確に追跡したいため、store.state.count を直接変更するのではなく、突然変異を送信します。この単純な規則により、意図がより明確になるため、コードを読み取るときにアプリケーション内の状態変化をより簡単に解釈できます。さらに、これにより、すべての状態変化を記録し、状態スナップショットを保存できるデバッグ ツールを実装する機会も得られます。これを使用すると、タイムトラベルのようなデバッグ体験を実現することもできます。
ストア内の状態は応答性があるため、コンポーネント内のストア内の状態を呼び出すことは、計算されたプロパティで返すのと同じくらい簡単です。変更をトリガーするには、コンポーネントのメソッドでミューテーションを送信するだけです。

vuex を設計するときに、状態の変化を追跡するために、ミューテーションによってトリガーされたデータの変更を送信するには commit を使用する必要があることが合意されていることがわかります。 Vue Devtools と呼ばれる公式の vue デバッグ プラグインを試してみると、コンポーネント、データ、vuex などを直接確認でき、変更を追跡することもできます。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート