首页 > 其他分享 >vue事件修饰符

vue事件修饰符

时间:2023-05-30 14:33:18浏览次数:36  
标签:vue 界面 log 修饰符 点击 事件 console click

@click

@click直接点击,会触发父元素事件

例如:

<template>
    <div @click="parentClick">
        <div @click="childClick" >
            子界面
        </div>
    </div>
</template>

<script>

  export default {
    data() {
      return {}
    },
    methods: {

      parentClick(){
        console.log('点击了父界面')
      },
      childClick(){
        console.log('点击了子界面')
      }
    }

</script>

当单击子界面时,打印结果为:

点击了子界面

点击了父界面

 

@click.stop

@click.stop阻止冒泡事件,相当于event.stopPropagation()

例如:

<template>
    <div @click="parentClick">
        <div @click.stop="childClick" >
            子界面
        </div>
    </div>
</template>

<script>
  export default {
    data() {
      return {}
    },
    methods: {
      parentClick(){
        console.log('点击了父界面')
      },
      childClick(){
        console.log('点击了子界面')
      }
    }

</script>

当单击子界面时,打印结果为:

点击了子界面

 

@click.prevent

@click.prevent阻止默认事件,相当于event.preventDefault()

例如:

<template>
    <div @click="parentClick">
        <div @click.stop="childClick" >
            子界面
        </div>
        <a href="www.baidu.com" @click.prevent="urlClick">        
             跳转链接
        </a>
    </div>
</template>

<script>
  export default {
    data() {
      return {}
    },
    methods: {
      parentClick(){
        console.log('点击了父界面')
      },
      childClick(){
        console.log('点击了子界面')
      },
          urlClick(){
            console.log('点击了跳转链接')
          }
    }

</script>                

当点击a标签时,界面不会跳转到设置的跳转链接www.baidu.com,而是执行绑定的事件函数urlClick()

运行结果为:

点击了跳转链接
点击了父界面

@click.prevent可以搭配stop事件使用

例如:若事件为  @click.prevent.stop="urlClick"

则运行结果为:

点击了跳转链接

 

@click.self

 @click.self 事件,只有点击绑定了self修饰符的元素本身才会触发事件

例如:

<template>
    <div @click.self="parentClick">
        <div @click="childClick" >
            子界面
        </div>
    </div>
</template>

<script>
  export default {
    data() {
      return {}
    },
    methods: {

      parentClick(){
        console.log('点击了父界面')
      },
      childClick(){
        console.log('点击了子界面')
      }
    }

</script>

当点击子界面时,由于父元素添加了self修饰,所以不会触发

运行结果为

点击了子界面

 

@click.capture

@click.capture为绑定事件添加捕获事件,点击子元素时才会触发,添加了capture修饰符的事件会先执行

例如:

<template>
    <div @click.capture="parentClick">
        <div @click="childClick" >
            子界面
        </div>
    </div>
</template>

<script>
  export default {
    data() {
      return {}
    },
    methods: {

      parentClick(){
        console.log('点击了父界面')
      },
      childClick(){
        console.log('点击了子界面')
      }
    }

</script>

运行结果为:

点击了父界面
点击了子界面

 

@click.once

@click.once只执行一次事件,之后再触发事件没有效果

 

@click.passive

@click.passive不拦截默认事件

标签:vue,界面,log,修饰符,点击,事件,console,click
From: https://www.cnblogs.com/fruitesBlogs/p/17443163.html

相关文章

  • Vue05-Vuex
    01.什么是状态管理在开发中,我们的应用程序需要处理各种各样的数据,这些数据需要保存在我们应用程序的某一个位置,对于这些数据的管理我们就称之为状态管理。在Vue开发中,我们使用组件化的开发方式:在组件中我们定义data或者在setup中返回使用的数据,这些数据我们称之为state(状......
  • 黑马Vue3 + ElementPlus + Pinia 小兔鲜电商项目2023版
    黑马Vue3+ElementPlus+Pinia小兔鲜电商项目2023版download:3w51xuebccomElementPlus:优雅高效的Vue组件库随着Vue.js在前端开发中的广泛应用,越来越多的UI组件库涌现出来。而其中一款备受瞩目的组件库就是ElementPlus。作为一款基于Vue3.0的组件库,ElementPlus不仅完美地继承了......
  • VUE+FastAPI结合高德地图API做一个旅游推荐系统
    最近一个月没有更新博客,去写了一个系统,包含前台和后台,还有后端的API。前后台使用VUE+高德地图API,后台使用FastAPI,实现了一些基本的功能。前台部分因为我也是前端初学者,写的比较乱基础功能用户登陆注册功能搜索功能主页照片墙跳转对应详情页打卡功能评论功能(没接......
  • vue3.0路由的两种方式
    import{createRouter,createWebHashHistory}from'vue-router'constroutes=[{path:'/',name:'index',component:()=>import('./pages/index.vue')//异步加载}]constrouter=createRouter(......
  • vue模拟el-table演示插槽用法
    vue模拟el-table演示插槽用法很多人知道插槽分为三种,但是实际到elementui当中为什么这么用,就一脸懵逼,接下来就跟大家聊一聊插槽在elementui中的应用,并且自己写一个类似el-table的组件vue的slot分为三种::匿名插槽,具名插槽,作用域插槽,主要作用:让父组件可以向子组件指定位置插入......
  • vue前端的avue-crud操作
     1、在js中获取某个字段的属性,或设置字段的值:constcolumn=this.findObject(this.option.column,"parentId");column.disabled=true;//设置为禁用此字段column.value='1';//设置parentId字段的value值console.log("column属性:",co......
  • JS中的事件监听
    JavaScript的事件监听是一种机制,用于在HTML文档中的元素上注册事件处理程序,以便在特定事件发生时执行相应的JavaScript代码。事件监听的基本思想是将事件处理程序(也称为事件回调函数)绑定到特定的事件上。所谓特定的事件是当用户与页面进行交互时,比如点击按钮、键盘输入、鼠标移动......
  • Vue基本知识1,安装创建以及常用指令
    Vue基本知识1,安装创建以及常用指令1.Vue的概念概念vue是一个渐进式的JavaScript开发框架;基于MVVM实现数据驱动的框架官网还可以用来做SPA(singlepagewebapplication):一个网页就是一个应用;例如网易云特点体积小速廈快数据双向绑定生态丰富学习成本低2.安......
  • JS判断视频Video的播放、暂停、结束完成及获取长度事件监听处理
    在日常应用场景中,可能会遇到这么一个情况,需要判断用户是否完整的观看完了一部视频,在这个场景中,和视频相关的事件大体涉及到几个部分,获取视频长度,视频开始播放,暂停播放和播放结束,下面来看下如何通过JavaScript来监听获取视频的这几种状态。(1)html页面视频标签大体如下<videoid="v......
  • 基于JAVA的springboot+vue医院信息管理系统、医院挂号管理系统,附源码+数据库+论文+PPT
    1、项目介绍任何系统都要遵循系统设计的基本流程,本系统也不例外,同样需要经过市场调研,需求分析,概要设计,详细设计,编码,测试这些步骤,基于java语言设计并实现了医院信管系统。该系统基于B/S即所谓浏览器/服务器模式,应用java技术,选择MySQL作为后台数据库。系统主要包括首页,个人中心,用户......