События — один из важнейших аспектов разработки веб-приложений. Во Vue.js 3 события являются основой взаимодействия компонентов, и они позволяют обрабатывать пользовательские действия, такие как клики, движения мыши и ввод данных. В этой статье мы рассмотрим принципы работы с событиями и обработчиками событий во Vue.js 3.
Использование директивы v-on
Для прослушивания событий во Vue.js 3 используется директива v-on
. Следующий пример показывает, как прослушивать событие клика на кнопке и вызывать метод submitForm
:
<template>
<div>
<button v-on:click="submitForm">Отправить</button>
</div>
</template>
<script>
export default {
methods: {
submitForm() {
console.log('Форма отправлена');
},
},
};
</script>
Сокращение для v-on
Во Vue.js 3 есть сокращение для директивы v-on
— символ @
. Пример использования сокращения:
<template>
<div>
<button @click="submitForm">Отправить</button>
</div>
</template>
<script>
export default {
methods: {
submitForm() {
console.log('Форма отправлена');
},
},
};
</script>
Передача аргументов в обработчики событий
Можно передавать аргументы в методы, вызываемые в результате события. В следующем примере передаем сообщение в метод showAlert
:
<template>
<div>
<button @click="showAlert('Сообщение')">Показать сообщение</button>
</div>
</template>
<script>
export default {
methods: {
showAlert(message) {
alert(message);
},
},
};
</script>
Модификаторы событий
Vue.js 3 предоставляет модификаторы событий, такие как .prevent
и .stop
, которые упрощают управление событиями. Например, модификатор .prevent
предотвращает выполнение действия по умолчанию:
<template>
<div>
<form @submit.prevent="submitForm">
<!-- Форма -->
<button type="submit">Отправить</button>
</form>
</div>
</template>
<script>
export default {
methods: {
submitForm() {
console.log('Форма отправлена');
},
},
};
</script>