1、stop:阻止冒泡

  如下:正常情况下,我们点击最内层的inner_inner的时候,事件会向上冒泡,inner 和outer也会执行。我们在inner_inner事件加上.stop修饰符,就会阻止事件向上冒泡,功能等价于原来的event.stopPropagation()

<div @click="outer">Out
<div @click="inner">Inner
<div @click.stop="inner_inner">
inner inner
</div>
</div>
</div>

2、prevent:阻止默认事件

  如下,我们有一个a标签,href指向baidu网址,当我们点击a标签时,执行clickA后,会继续执行默认的跳转事件。我们添加了.prevent修饰符后,就会阻止它的默认事件。功能等价于event.preventDefault()

<a href="http://www.baidu.com" @click.prevent="clickA">baidu</a>

3、self:只有自身执行

  self的作用时,只有点击自身的时候,才会执行,其他的触发(如冒泡啥的)都不会执行

  如下:只有点击Inner div自身的时候,才会执行inner(),点击inner_inner的时候,会冒泡,但是不会被捕获执行

<div @click="outer">Out
<div @click.self="inner">Inner
<div @click="inner_inner">
inner inner
</div>
</div>
</div>

4、capture:捕获冒泡

  当有冒泡事件时,会最先捕获并执行,所以点击inner_inner时,下面的执行顺序是outer--->inner_inner---->inner

<div @click.capture="outer">Out
<div @click="inner">Inner
<div @click="inner_inner">
inner inner
</div>
</div>
</div>

5、once:只执行一次

  这里点击Add num加1,给click事件添加了once修饰符后,事件只会执行一次,再次点击不再执行addOne方法。

<button @click.once="addOne">Add{{num}}</button>

6、native:

  当想要给组件的根元素绑定事件的时候,可以使用native修饰符

  如下,在父组件中调用my-button子组件,定义了click事件,我们都知道在my-button组件中,如果触发父组件定义的事件,是可以执行的,但是我们不想在子组件中触发,希望在父组件中监听这个点击事件,可以给click事件添加.native修饰符

<my-button @click.native='myBtn'></my-button>

Vue.component("my-button",{
template:"<button>My Button</button>"
});

vue常用时间修饰符记录的更多相关文章

  1. vue常用的修饰符

    v-model修饰符 <template> <div id="demo14"> <p>-----------------模板语法之修饰符---- ...

  2. Vue 时间修饰符之使用$event和prevent修饰符操作表单

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. vue中的修饰符

    Vue2.0学习笔记:Vue事件修饰符的使用   事件处理 如果需要在内联语句处理器中访问原生DOM事件.可以使用特殊变量$event,把它传入到methods中的方法中. 在Vue中,事件修饰符处理 ...

  4. Vue的事件修饰符

    转载于:https://www.cnblogs.com/xuqp/p/9406971.html 事件处理 如果需要在内联语句处理器中访问原生DOM事件.可以使用特殊变量$event,把它传入到meth ...

  5. vue2.0 事件处理常用修饰符-----------------记录,加强记忆。

    1,<!-- 阻止单击事件继续传播 --> <a v-on:click.stop="doThis"></a> stop修饰符对应的是阻止冒泡的e ...

  6. vue 指令和修饰符

    1. v-textv-text主要用来更新textContent,可以等同于JS的text属性. <spanv-text="msg"></span> 这两者 ...

  7. iOS 属性修饰符记录 --不定时更新

    重新审视了一下OC在属性修饰符,特意记录一下来.以后不定时更新 > retain:只有在非ARC下才会有效,所有如果在ARC下使用了retain修饰也白搭 如以下的data属性用retain修饰 ...

  8. vue 之 .sync 修饰符

    在一些情况下,我们可能会需要对一个 prop (父子组件传递数据的属性) 进行“双向绑定”. 在vue 1.x 中的 .sync 修饰符所提供的功能.当一个子组件改变了一个带 .sync 的prop的 ...

  9. vue中.sync 修饰符

    一直以来,都不太明白.sync的用法,归根结底原因在于,没有仔细阅读“.sync修饰符”. 正好,最近在拿一个项目练手,然后使用了elment-ui,然后在用到dialog的时候,属性visible是 ...

随机推荐

  1. sublime text3中如何使用PHP编译系统

     [WinError 2] 系统找不到指定的文件 编译错误原因,是因为编译器没有配置 第一步: 添加php可执行程序所在目录到系统环境变量(具体方法此处省略,使用本文下面的说明中的方法,此步骤可以省略 ...

  2. openstack kvm cannot set up guest memory 'pc.ram': Cannot allocate memory

    Kvm:启动报错:error: internal error: process exited while connecting to monitor: 2018-11-12T01:47:14.9933 ...

  3. ubuntu16.04和ubuntu18.04安装dlib

    - # for macOS brew install cmake brew install boost brew install boost-python --with-python3 # for U ...

  4. RPC协议、http协议、https协议的区别

    什么是RPC协议?RPC是一种远程过程调用的协议,使用这种协议向另一台计算机上的程序请求服务,不需要了解底层网络技术的协议. 在 RPC 中,发出请求的程序是客户程序,而提供服务的程序是服务器. HT ...

  5. Unix下可用的五种 I/O 模型

    介绍 当TCP客户端同时处理两个输入时:标准输入和TCP套接字,当客户端fgets(在标准输入上)被阻塞并且服务器进程被终止时,我们遇到了问题.服务器TCP正确地将FIN发送到客户端TCP,但由于客户 ...

  6. Tosca 添加插件或者是扩展功能,把页面上某块内容识别成table

    #遇到了问题 "ICS table was not found" 是因为编辑case的时候用到了插件的功能, 但是setting里面却没有配置这个插件 #在哪里添加插件 #目的 这 ...

  7. AndoridSQLite数据库开发基础教程(6)

    AndoridSQLite数据库开发基础教程(6) 为数据库添加添加空表 如果开发者想要往数据库中添加表和列,操作步骤如下: (1)在打开的数据库中,单击左下方的“+”按钮,弹出Table Edito ...

  8. Cannot find module 'laravel-elixir'问题解决方法

    在用gulp 安装elixir的时候报了这样的错误: Laravel elixir npm error Cannot find module 'laravel-elixir/ingredients/c ...

  9. Docs-.NET-C#-指南-语言参考-关键字-值类型:struct

    ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:struct 1.返回顶部 1. struct(C# 参考) 2015/07/20 struct 类型是一种值类型,通常用来封 ...

  10. Ionic4.x、Cordova Android 检测应用版本号、服务器下载文件以及实现App自动升级、安装

    Android App 升级执行流程 1.获取本地版本号 2.请求服务器获取服务器版本号 3.本地版本和服务器版本不一致提示升级,弹窗提示用户是否更新 4.用户确定升级,调用文件传输方法下载 apk ...