Ich lerne Vue.js. In meinem Vue habe ich ein Textfeld und eine Schaltfläche. Standardmäßig sendet diese Schaltfläche ein Formular, wenn jemand die Eingabetaste auf seiner Tastatur drückt. Wenn jemand in das Textfeld tippt, möchte ich jede gedrückte Taste erfassen. Wenn der Schlüssel ein @ -Symbol ist, möchte ich etwas Besonderes tun. Wenn die gedrückte Taste die Eingabetaste ist, möchte ich auch etwas Besonderes tun. Letzteres ist das, was mich herausfordert. Derzeit habe ich diese Geige , die diesen Code enthält:
new Vue({
el: '#myApp',
data: {
emailAddress: '',
log: ''
},
methods: {
validateEmailAddress: function(e) {
if (e.keyCode === 13) {
alert('Enter was pressed');
} else if (e.keyCode === 50) {
alert('@ was pressed');
}
this.log += e.key;
},
postEmailAddress: function() {
this.log += '\n\nPosting';
}
});
In meinem Beispiel kann ich die Eingabetaste nicht drücken, ohne das Formular zu senden. Ich würde jedoch erwarten, dass die validateEmailAddressFunktion mindestens zuerst ausgelöst wird, damit ich sie erfassen kann. Aber das scheint nicht zu passieren. Was mache ich falsch?