vuex を使用してイベントをよりエレガントにディスパッチするにはどうすればよいでしょうか?
黄舟
黄舟 2017-05-19 10:39:29
0
3
765

私は常に new Vue() を使用してグローバル通信バスを定義してきました。そのため、コンポーネント間の通信には、一方が送信し、もう一方がリッスンするだけで済みます。その後、vuex に切り替えました。vuex は単なるグローバル データであると感じます。イベントをディスパッチする必要がある場合: たとえば、コンポーネント A のイベントがコンポーネント B のメソッドをトリガーする (たとえば、ボタンをクリックする、タイマーをキャンセルする)私が現在使用している方法は、ブール値を定義し、それがトリガーされるたびに false を受け取り、コンポーネント内でこの値を監視してメソッドを呼び出すことです。

写真に示すように:

それでは聞いてください:

もっと良い方法がある人はいますか?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全員に返信(3)
给我你的怀抱

いいねを押す +0
曾经蜡笔没有小新

これにはvuexを使うのが良いのではないでしょうか?なぜ無駄に見えるのでしょうか?これと同じように、loginSuccessを使ってユーザーのアバターを表示するかどうかを制御すると、かなり使い心地が良いと思います

いいねを押す +0
習慣沉默

1. オブジェクトの状態変更を通知したいだけの場合は、イベントを使用することをお勧めします。
1. 親コンポーネントで対応するイベント名をリッスンし、子コンポーネントをトリガーすることにより、親コンポーネントと子コンポーネントの間でイベント通信を行います。
2. 非親子コンポーネントはイベントバスメソッドを使用します

2. コンポーネント間のデータ共有
1. 中規模および大規模なアプリケーションは vuex を使用します
2. アプリケーション シナリオが比較的少ない場合、親子コンポーネントはデータ転送にイベント バスを使用します

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