Table of Contents
1. Basic usage of v-on
2. Processing method of listening events
3. Pass parameters
4. Modifiers
4.1 Preventing event bubbling
4.2 Prevent default behavior
4.3 Key modifier
Home Web Front-end Vue.js How to use v-on to listen for events in Vue

How to use v-on to listen for events in Vue

Jun 11, 2023 pm 02:00 PM
vue event listening v-on

Vue is a popular JavaScript framework that has become a very popular choice for many developers. It uses a responsive system and componentization to allow developers to quickly create interactive front-end applications. Among them, the v-on instruction is a very useful tool, which allows developers to easily monitor various events in Vue applications. This article will introduce how to use v-on to listen for events in Vue.

1. Basic usage of v-on

The v-on command is actually an abbreviation for event binding. It can monitor DOM events, such as clicks, mouse hovers, and keyboards. Press and so on. The following is the basic usage of v-on, taking monitoring click events as an example:

<button v-on:click="handler">Click me</button>
Copy after login

In the above code, we use the v-on instruction to listen for click events and bind the event to a handler method. When the user clicks the button, the handler method is triggered.

You can also use the following abbreviation:

<button @click="handler">Click me</button>
Copy after login

This is the abbreviation of the v-on instruction, and the effect is exactly the same as the above code.

2. Processing method of listening events

Generally, we need to manually define a method in the Vue instance to handle the event. The name of the method can be customized, and we can write processing functions in the method.

<template>
  <button v-on:click="handleClick">Click me</button>
</template>

<script>
export default {
  methods: {
    handleClick: function (event) {
      // 处理点击事件
    }
  }
}
</script>
Copy after login

In the above code, we defined a handleClick method in the Vue component to handle click events. When the user clicks the button, this method will be triggered, and the event object event will be passed into the method as the only parameter. In the method, we can get some information about the event through the event object.

3. Pass parameters

If we need to pass additional parameters to the processing function, we can use the special syntax of the v-on instruction.

<template>
  <button v-on:click="handleClick('参数1', '参数2')">Click me</button>
</template>

<script>
export default {
  methods: {
    handleClick: function (arg1, arg2) {
      // 处理点击事件,并使用arg1和arg2
    }
  }
}
</script>
Copy after login

In the above code, we passed in two parameters in the instruction, and these two parameters will be passed to the arg1 and arg2 parameters in the handleClick function. Note that if we need to use dynamic parameters, we need to use square bracket syntax.

4. Modifiers

In addition to basic usage and passing parameters, the v-on directive also provides some modifiers to enhance event processing capabilities.

4.1 Preventing event bubbling

In Vue, events can bubble up along the component tree until they reach the root component. If we need to prevent the event from bubbling, we can call the stopPropagation() method of the Event object in the event handling method.

<template>
  <div v-on:click="outer">
    <div v-on:click="inner">
      Click me
    </div>
  </div>
</template>

<script>
export default {
  methods: {
    inner: function (event) {
      event.stopPropagation()
    },
    outer: function () {
      console.log('outer')
    }
  }
}
</script>
Copy after login

In the above code, we called the stopPropagation() method in the click event of the subcomponent, thus preventing the event from bubbling. If we do not call this method, the click event will trigger the handler functions in the child component and parent component in turn.

4.2 Prevent default behavior

In Vue, the event handling function can also call the preventDefault() method of the Event object to prevent the browser's default behavior. For example, we can prevent form submission or link redirection.

<template>
  <form v-on:submit.prevent="submit">
    ...
  </form>
  <a href="https://www.google.com" v-on:click.prevent>Google</a>
</template>

<script>
export default {
  methods: {
    submit: function () {
      // 阻止表单的提交行为
    }
  }
}
</script>
Copy after login

In the above code, we use the prevent modifier in the form's submission event, thereby preventing the form's default submission behavior. In the link's click event, we also use the prevent modifier to prevent the link from jumping.

4.3 Key modifier

In Vue, events can be used in conjunction with keystrokes. If we only want to trigger an event when a specific key is pressed, we can use key modifiers.

<template>
  <input v-on:keyup.enter="submit">
</template>

<script>
export default {
  methods: {
    submit: function () {
      // 处理键盘的回车事件
    }
  }
}
</script>
Copy after login

In the above code, we can use the .enter modifier in the keyup event so that the event handler is only triggered when the Enter key is pressed.

In summary, the v-on instruction is a very useful instruction, which can help us monitor various events very conveniently in Vue applications. When using the v-on instruction, we need to pay attention to basic usage, passing parameters, modifiers, etc., so that we can better use this instruction.

The above is the detailed content of How to use v-on to listen for events in Vue. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to add functions to buttons for vue How to add functions to buttons for vue Apr 08, 2025 am 08:51 AM

You can add a function to the Vue button by binding the button in the HTML template to a method. Define the method and write function logic in the Vue instance.

How to use bootstrap in vue How to use bootstrap in vue Apr 07, 2025 pm 11:33 PM

Using Bootstrap in Vue.js is divided into five steps: Install Bootstrap. Import Bootstrap in main.js. Use the Bootstrap component directly in the template. Optional: Custom style. Optional: Use plug-ins.

How to reference js file with vue.js How to reference js file with vue.js Apr 07, 2025 pm 11:27 PM

There are three ways to refer to JS files in Vue.js: directly specify the path using the &lt;script&gt; tag;; dynamic import using the mounted() lifecycle hook; and importing through the Vuex state management library.

How to use watch in vue How to use watch in vue Apr 07, 2025 pm 11:36 PM

The watch option in Vue.js allows developers to listen for changes in specific data. When the data changes, watch triggers a callback function to perform update views or other tasks. Its configuration options include immediate, which specifies whether to execute a callback immediately, and deep, which specifies whether to recursively listen to changes to objects or arrays.

How to return to previous page by vue How to return to previous page by vue Apr 07, 2025 pm 11:30 PM

Vue.js has four methods to return to the previous page: $router.go(-1)$router.back() uses &lt;router-link to=&quot;/&quot; component window.history.back(), and the method selection depends on the scene.

Vue realizes marquee/text scrolling effect Vue realizes marquee/text scrolling effect Apr 07, 2025 pm 10:51 PM

Implement marquee/text scrolling effects in Vue, using CSS animations or third-party libraries. This article introduces how to use CSS animation: create scroll text and wrap text with &lt;div&gt;. Define CSS animations and set overflow: hidden, width, and animation. Define keyframes, set transform: translateX() at the beginning and end of the animation. Adjust animation properties such as duration, scroll speed, and direction.

How to use vue pagination How to use vue pagination Apr 08, 2025 am 06:45 AM

Pagination is a technology that splits large data sets into small pages to improve performance and user experience. In Vue, you can use the following built-in method to paging: Calculate the total number of pages: totalPages() traversal page number: v-for directive to set the current page: currentPage Get the current page data: currentPageData()

How to query the version of vue How to query the version of vue Apr 07, 2025 pm 11:24 PM

You can query the Vue version by using Vue Devtools to view the Vue tab in the browser's console. Use npm to run the "npm list -g vue" command. Find the Vue item in the "dependencies" object of the package.json file. For Vue CLI projects, run the "vue --version" command. Check the version information in the &lt;script&gt; tag in the HTML file that refers to the Vue file.

See all articles