• vue常用时间修饰符记录


    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>"
    });
  • 相关阅读:
    maxProfit2
    maxProfit
    getRow
    generate
    hasPathSum
    minDepth
    isBalanced
    sortedArrayToBST
    不得不学的 TCP三次握手和四次挥手
    java生态框架、中间件该有的都有了
  • 原文地址:https://www.cnblogs.com/fiona-zhong/p/12055431.html
Copyright © 2020-2023  润新知