Ember.js: lorsque vous utilisez {{action}}, comment cibler un contrôleur spécifique?
J'ai mis ma question dans un exemple de code ici:
http://jsbin.com/urukil/12/edit
Voir, je peux utiliser un {{action}}
(qui est placé dans une vue d'enfant) avec target
option pour déclencher un événement dans ApplicationView
ou ApplicationController
ou ChildView
sauf dans le cas de la ChildController
qui est celui que je voulais vraiment.
Selon le document, si aucune target
spécifié, l'événement lui-même devrait traitées dans le contrôleur correspondant, dans mon cas, ce qui est devrait être ChildController
. Mais pourquoi cette action, toujours à la recherche de ApplicationController
? Ai-je raté quelque chose d'important évidemment?
source d'informationauteur nightire
Vous devez vous connecter pour publier un commentaire.
Utilisation
this.controllerFor('')
pour appeler les différents événements du contrôleur. Un exemple est donné ci-dessous.JS:
//hbs
Vous pouvez utiliser
doit
pour appeler une action sur les différents contrôleur...Et la cible peut être spécifié comme des "contrôleurs.enfant" à partir du modèle
Ici est votre travail violon...
http://jsbin.com/agusen/1/edit
Autant que je sache, la classe de la vue ne change pas le régulateur de courant. Depuis que vous appelez le point de vue de l'Application du modèle, il reste dans le ApplicationController.
Emberjs.com guides sur render:
Simplement de changer votre code à partir d'une vue d'un rendu en appel semble faire l'affaire:
Depuis controllerFor devient obsolète, la bonne façon de faire est de spécifier les besoins dans le contrôleur, le récupérer à partir de la liste des contrôleurs, et puis de l'envoyer. Exemple:
EDIT: oups... on dirait que quelqu'un a déjà posté cette réponse, en fait. Va réviser si nécessaire.