La Communication entre frère composants dans VueJs 2.0

Dans vuejs 2.0 model.sync sera obsolète.

Donc, ce qui est un bon moyen de communiquer entre frère composants dans vuejs 2.0?

Que je rattrape l'idée en Vue 2.0 est d'avoir de frère, de la communication à l'aide d'un magasin ou d'un événement de bus.

Selon evan:

Il est également intéressant de mentionner "le passage des données entre les composants" est
généralement une mauvaise idée, parce qu'à la fin du flux de données devient
untrackable et très difficiles à déboguer.

Si un morceau de données qui doit être partagée par plusieurs composants, préfèrent
mondial de magasins ou Vuex.

[Lien vers la discussion]

Et:

.once et .sync sont obsolètes. Les accessoires sont maintenant toujours un chemin vers le bas. Pour
produire des effets secondaires de la portée parent, un composant doit
explicitement emit un événement au lieu de s'appuyer sur l'implicite de liaison.

(Donc, il suggérer est d'utiliser $emit et $on)

Je suis inquiet à cause de:

  • Chaque store et event a une visibilité à l'échelle mondiale (corrigez-moi si je me trompe);
  • C'est pour beaucoup à créer une nouvelle banque pour chaque mineur de communication;

Ce que je veux, c'est portée en quelque sorte events ou stores visibilité pour les frères et sœurs des composants. Ou peut-être que je n'ai pas compris l'idée.

Alors, comment communiquer dans un droit chemin?

  • $emit combiné avec v-model pour émuler .sync. je pense que vous devriez aller le Vuex façon
  • Donc j'ai pensé à la même préoccupation. Ma solution est d'utiliser un événement de l'émetteur à un canal de diffusion qui est l'équivalent de "champ d'application" - c'est à dire un enfant/parent et frère de configuration utilisez le même canal de communication. Dans mon cas, j'utilise la radio de la bibliothèque radio.uxder.com parce que c'est juste quelques lignes de code et de ses pare-balles, mais beaucoup choisissent de nœud EventEmitter.