Powiedzmy, że mam szablon z kilkoma elementami button
. Jeśli chcę obejrzeć wydarzenie click
, używam tylko pomocnika {{action}}
. Ale nie mogę wymyślić sposób przekazywania innych zdarzeń, takich jak mouseEnter
lub mouseLeave
. Pomyślałem, aby użyć Ember.Button
i jakoś to zrobić przez childViews
, ale wydaje się być deprecated.Ember.js {{action}} inny niż kliknij
szablon
{{#view App.MyView}}
<button {{action "btnClicked"}}>button1</button>
<button {{action "btnClicked"}}>button2</button>
{{/view}}
js
App.MyView = Em.View.extend({
btnClicked: function(e){
alert('btnClicked');
},
btnMouseEnter: function(e){
alert('btnMouseEnter'); // how to call this?
}
});
wiem, że mogę używać {{action "btnMouseEnter" on="mouseEnter"}}
ale potem stracić funkcjonalność kliknięcia. Czy muszę zawijać każdy przycisk w swoim własnym Ember.View
? Jeśli tak, dlaczego Ember.Button
jest przestarzałe?
Edit:
Myślę, że powinieneś być w stanie mieć wiele zdarzeń wywoła taką samą action
<button {{action "myAction" on="click mouseEnter mouseLeave"}}>button</button>
I wdrożone to zachowanie w moim fork i here jest jsFiddle wykazując go pracy
Edytuj:
Jeśli ktoś jest również zainteresowany tą funkcjonalnością, dyskusja będzie trwała here.
+1 dla łącza. Jaka szkoda, że nie wyjaśnili, dlaczego nie zdecydowali się na wsparcie wielu działań. –
Zaktualizowałem moje pytanie. Czy mogę mieć opinię? –
Myślę, że będziesz mieć odpowiedzi w kwestii, którą opublikowałeś;) –