Nein, Es ist nicht möglich, es zu tun wie diese. Als Sie versuchen, Sie zu binden "keyDown" - event. Kannst du nicht erreichen die gleiche Funktionalität durch die Beobachtung Textfeld Wert. Ich habe den Beispiel-code hier.
Wie Lesen Sie den Wert der Eingabe in die myValueDidChange Funktion?
Marco - ich denke, dass das design dem Eingang gebunden an ein anderes Mitglied des Controllers. Wie zum Beispiel: {{input value=myValue}} in der Vorlage, die bindet einen Beitrag zu myValue in Ihrer Steuerung. Dann, in der myValueDidChange-Funktion, können Sie einfach Lesen Sie die aktuellsten Wert myValue.
Weitere option ,wenn Sie gehen zu müssen, diese an mehreren Orten sein würde, um eine Komponente zu erstellen. An diesem Punkt kann man in der Tat fangen die Taste drücken. Wollen Sie zum Beispiel ein numerisches Feld, das Sie tun konnte:
Nein, Es ist nicht möglich, es zu tun wie diese. Als Sie versuchen, Sie zu binden "keyDown" - event. Kannst du nicht erreichen die gleiche Funktionalität durch die Beobachtung Textfeld Wert. Ich habe den Beispiel-code hier.
Vorlage :
Controller :
myValueDidChange
Funktion?Heutzutage könnte man einfach schreiben:
Siehe für mehr info: http://guides.emberjs.com/v1.10.0/templates/input-helpers/#toc_actions
this.controller.get('myValue')
.Weitere option ,wenn Sie gehen zu müssen, diese an mehreren Orten sein würde, um eine Komponente zu erstellen. An diesem Punkt kann man in der Tat fangen die Taste drücken. Wollen Sie zum Beispiel ein numerisches Feld, das Sie tun konnte:
und dann auf dem controller:
und schließlich können Sie rufen Sie es mit:
Eine Lösung wäre, sich zu registrieren, eine Aktion in dem controller und rufen Sie es von der Eingabe-Helfer, indem Sie ein Ereignis.
action im controller
input-helper mit einer key-press-Ereignis:
Ruft die Aktion-Abfrage-Formular Ihre ApplicationController auf jedem keyPress-Ereignis
hier ist eine Liste der Ereignisse: Ember Veranstaltungen
Credits gehen hier:
und
und nur anderen Ereignis.
EDIT: Getestet mit Ember 3.1