首页 > 其他分享 >vue的事件处理和事件参数

vue的事件处理和事件参数

时间:2024-08-21 19:51:24浏览次数:9  
标签:count 事件处理 vue 参数 事件 内联 data event 处理器

一、事件处理

我们可以使用v-on 指令(简写为@)来监听DOM事件,并在事件触发时执行对应的JavaScript。用法:

on:click="methodName"

@click="handler"

 

  • 内联事件处理器:事件被触发时执行的内联JavaScript语句(与onclick类似)
  • 方法事件处理器:一个指向组件上定义的方法的属性名或是路径

 内联事件处理器:

内联事件处理器通常用于简单场景

<template>
    <h3>内联事件处理器</h3>
    <button on:click="count++">Add</button>  <!-- v-on:可简写为@ -->
    <p>{{ count }}</p>
</template>
<script>
export default {
    data() {
        return {
            count:0
        }
    }
}
</script>

 方法事件处理器:

<template>
    <h3>方法事件处理器</h3>
    <button @dblclick="addCount">Add</button>//dblclick代表双击触发
    <p>{{ count }}</p>
</template>
<script>
export default {
    data(){
        return {
            count:0
        }
    },
    methods: {
        addCount(){
            this.count++
        }
    }
}
</script>

二、事件参数

 事件参数可以获取 event对象和通过事件传递数据获取event对象

<template>
    <h3>事件参数传递数据</h3>
    <button @click="addCount('hello')">Add</button>
    <p>{{ count }}</p>
</template>
<script>
export default {
    data(){
        return {
            count:0
        }
    },
    methods: {
        addCount(msg){
            //e.target.innerHTML="Add"+this.count;
            console.log(msg);
            this.count++  //this.count用于读取到data里面的数据
        }
    }
}
</script>

注意:vue中的event对象,就是原生JS的event对象

<template>
    <h3>事件传参</h3>
    <p @click="getNameHandler(item,$event)" v-for="(item,index) in names" :key="index">{{ item }}</p>
</template>
<script>
export default {
    data(){
        return {
            names:['a', 'b', 'c']
        }
    },
    methods: {
        getNameHandler(name,e){
            console.log(name);
            console.log(e);
        }
    }
}
</script>

注意:既传递对象又传递事件要用$event
 

标签:count,事件处理,vue,参数,事件,内联,data,event,处理器
From: https://blog.csdn.net/2201_76045942/article/details/141401297

相关文章

  • Vue3使用VueEcharts实现图表
    这里以折线图为例,其他以此类推编写折线图子组件 <scriptlang="ts"setup>import{useDark}from'@vueuse/core'importmomentfrom'moment'import{computed}from'vue'importVueEchartsfrom'vue-echarts'constprops......
  • Vue3父子通信-setup+经典父组件与子组件el-dialog
    一、父组件绑定方法,引入子组件并传递数据和方法<el-buttonsize="small"plaintype="primary"@click="click_add_notice">+添加公告</el-button><AddNoticeDialogv-model="AddNoticeDialogDialogVisible"@addNoticeSucc......
  • 基于SpringBoot+Vue的实验室排课系统设计与实现(2025年毕业项目-源码+论文+部署讲解等)
    文章目录1.前言2.详细视频演示3.论文参考4.项目运行截图5.技术框架5.1后端采用SpringBoot框架5.2前端框架Vue6.可行性分析7.系统测试7.1系统测试的目的7.2系统功能测试8.数据库表设计9.代码参考10.数据库脚本11.作者推荐项目12.为什么选择我?13.获取源......
  • Vue 学习 Ref shallowRef triggerRef customRef (Ref 和 Reactive的对比)
    RefshallowReftriggerRefcustomRef针对对象(引用类型)来说:Ref:深层次的检查后面的对象的每一层是否改变,会改变值,且页面渲染shallowRef:浅层次的检查对象内,想要修改必须要要对.value对象进行重新赋值obj.value.name='456'//这种方式只会让对象值更改,但不会让页面重新渲染,......
  • ant design vue 表格table 和复选框Checkbox结合 实现树形数据操作
    前言:最近在做一个权限管理的页面,需要配置权限。业务给的要求在表格里,展示权限以及编辑权限。然后根据权限数组,动态展示模块。页面需求:可以设定每个公司或者部门的单独权限,可以编辑保存权限主要实现:1.全选,反选(递归循环,every,some实现)2.子级选中其父级选中,父级取消子级也取消3.......
  • vue---echarts环形图
    1、完整代码直接可以cv <template><divid="main1"></div></template><script>import*asechartsfrom'echarts';//import{mapState}from'vuex';//import{Alarm_Device}from'../utils/api.......
  • 前端数据持久化——Vuex+LocalStorage
    VuexVueX详解_组合式vuex-CSDN博客 LocalStorageLocalStorage是一种WebAPI,它允许网站在用户的本地浏览器中存储和检索数据,而不是将数据存储在服务器上。以下是LocalStorage的详细解析:一、LocalStorage的基本特点本地存储:LocalStorage存储的数据保存在用户的浏览器中,不......
  • VUE主题切换
    Vue.use(Vuex)conststore=newVuex.Store({ state:{ "theme":"theme-red", }, mutations:{ setTheme(state,theme){ state.theme=theme }, }, actions:{ setTheme:({ commit, state },theme)=>{ //获取主题配......
  • vue3中script标签的setup实现原理
    概述当vue3新建组件时,我们有两种选择选项式和组合式,如下所示传统方式<script>import{ref}from"vue";exportdefault{setup(){constcount=ref(0);consthandleClick=()=>{count.value++;};return{count,handleClick......
  • springboot+vue服装搭配推荐系统【程序+论文+开题】-计算机毕业设计
    系统程序文件列表开题报告内容研究背景随着电子商务的蓬勃发展和个性化消费趋势的兴起,服装行业正经历着前所未有的变革。在海量商品面前,消费者往往面临选择困难,尤其是在服装搭配方面,如何根据个人喜好、身形特点以及场合需求快速找到最合适的搭配方案,成为众多消费者的迫切需......