当前位置:首页 > VUE

vue的艾特功能实现

2026-02-09 18:48:41VUE

Vue 中的 @ 功能实现

在 Vue 中,@ 符号是 v-on 指令的简写,用于监听 DOM 事件并执行对应的 JavaScript 代码。以下是具体实现方式:

基本语法

<button @click="handleClick">点击我</button>

等价于:

<button v-on:click="handleClick">点击我</button>

方法定义

在 Vue 实例的 methods 选项中定义事件处理函数:

vue的艾特功能实现

methods: {
  handleClick() {
    console.log('按钮被点击了');
  }
}

传递参数

可以直接在模板中传递参数给事件处理函数:

<button @click="handleClick('参数值')">带参数的点击</button>

事件修饰符

Vue 提供了事件修饰符来实现常见的 DOM 事件处理需求:

vue的艾特功能实现

<!-- 阻止默认行为 -->
<form @submit.prevent="onSubmit"></form>

<!-- 阻止事件冒泡 -->
<div @click.stop="doThis"></div>

<!-- 按键修饰符 -->
<input @keyup.enter="submit">

原生事件绑定

如果要监听组件根元素的原生事件,需要使用 .native 修饰符:

<my-component @click.native="doSomething"></my-component>

自定义事件

在组件中使用 $emit 触发自定义事件,父组件通过 @ 监听:

<!-- 子组件 -->
<button @click="$emit('custom-event', payload)">触发事件</button>

<!-- 父组件 -->
<child-component @custom-event="handleCustomEvent"></child-component>

动态事件名

Vue 2.6.0+ 支持动态事件名:

<button @[eventName]="handleEvent">动态事件</button>
data() {
  return {
    eventName: 'click'
  }
}

注意事项

  • 事件处理函数中的 this 自动绑定到 Vue 实例
  • 可以使用 $event 访问原生 DOM 事件
  • 对于需要被动监听的事件,可以使用 .passive 修饰符提升滚动性能

标签: 功能vue
分享给朋友:

相关文章

vue实现列表显示

vue实现列表显示

Vue 实现列表显示的方法 在 Vue 中实现列表显示通常使用 v-for 指令,结合数组或对象数据渲染动态列表。以下是几种常见的实现方式。 基本列表渲染 通过 v-for 指令遍历数组,动态生成列…

vue设计与实现目录

vue设计与实现目录

以下是《Vue设计与实现》一书的典型目录结构(根据常见技术书籍及Vue核心内容整理): 响应式系统 响应式数据的基本原理 依赖收集与触发更新 实现简易响应式系统 Proxy与Refl…

vue自己实现下拉导航

vue自己实现下拉导航

实现下拉导航的基本思路 在Vue中实现下拉导航,可以通过结合Vue的响应式数据和事件绑定特性来完成。主要思路是利用v-show或v-if控制下拉菜单的显示与隐藏,并通过鼠标事件或点击事件触发状态变化。…

vue实现div

vue实现div

Vue 实现 DIV 元素的方法 在 Vue 中实现 DIV 元素可以通过多种方式,以下是几种常见的实现方法: 使用模板语法 在 Vue 的模板中直接使用 HTML 的 <div> 标签…

vue轮询实现

vue轮询实现

Vue 轮询实现方法 在 Vue 中实现轮询可以通过以下几种方式: 使用 setInterval data() { return { pollInterval: null } },…

vue实现前端

vue实现前端

Vue 实现前端的核心方法与步骤 安装 Vue 项目 使用 Vue CLI 或 Vite 创建项目。Vue CLI 是传统构建工具,Vite 是新一代轻量级工具。 npm init vue@la…