Я использую Vue.js в своем приложении и имею текстовый ввод в форме
<div id="myVueForm">
<form>
<input type="text" v-on="keyup:addCategory | key 'enter'">
<!-- more form fields -->
<button type="submit">Submit Form</button>
</form>
</div>
В моем экземпляре Vue у меня есть следующие
new Vue({
el: '#myVueForm',
methods: {
addCategory: function(e)
{
if(e) e.preventDefault();
console.log("Added a new category, thanks!");
}
}
});
Несмотря на вызов preventDefault();
, когда пользователь нажимает кнопку ввода, в то время как на текстовом входе форма все еще подает (хотя метод addCategory()
срабатывает). Это поведение можно продемонстрировать в этой скрипке.
Я знаю, что могу использовать jQuery, чтобы поймать событие и предотвратить отправку, но я хотел бы посмотреть, возможно ли это в Vue сделать это, поскольку это кажется довольно распространенным использованием.