J'apprends Vue.js. Dans ma Vue, j'ai un champ de texte et un bouton. Par défaut, ce bouton envoie un formulaire lorsque quelqu'un appuie sur la touche Entrée de son clavier. Quand quelqu'un tape dans le champ de texte, je veux capturer chaque touche enfoncée. Si la clé est un symbole «@», je veux faire quelque chose de spécial. Si la touche enfoncée est la touche "Entrée", je souhaite également faire quelque chose de spécial. C'est ce dernier qui me donne des défis. Actuellement, j'ai ce Fiddle , qui comprend ce code:
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';
}
});
Dans mon exemple, je n'arrive pas à appuyer sur la touche "Entrée" sans avoir soumis le formulaire. Pourtant, je m'attendrais à ce que la validateEmailAddressfonction démarre au moins pour pouvoir la capturer. Mais cela ne semble pas se produire. Qu'est-ce que je fais mal?