前言
一下是一段运用了事件修饰符的代码:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34<style>
div{
    padding: 50px;
}
</style>
<body>
    <div @click='outerclick' id="app" style="background-color: blue">
        <div @click='innerclick' style="background-color: red">
            <button @click='btnclick'>这是一个测试按钮</button>
        </div>
        <a @click.prevent.once href="https://www.baidu.com">这是去百度的链接</a>
    </div>
    <script src="./../../js/vue.js"></script>
    <script>
    var vm=new Vue({
        el:'#app',
        data:{// 通过在data中设置变量      
            msg:'这是一个测试内容',
        },
        methods: {
           btnclick(){
               alert('这是一个按钮');
           },
           innerclick(){
               alert('这是里面的div')
           },
           outerclick(){
               alert('这是外面的div')
           }
        },
    }) 
    </script>
</body>
.stop
 通过.stop可以阻止事件向上冒泡
1  | <button @click.stop='btnclick'>这是一个测试按钮</button>  | 
我们只需要这样设置就可以阻止事件向上冒泡
.self
 通过.self可以阻止事件向上冒泡1
<div @click.self='innerclick' style="background-color: red">
我们只需要这样设置就使这个里面的div在按钮进行事件冒泡的时候不会触发它的单击事件,只会触发自己的事件。
.prevent
通过.prevent就可以阻止默认行为1
<a @click.prevent href="https://www.baidu.com">这是去百度的链接</a>
通过以上代码就可以实现阻止默认行为,但我们单击超链接的时候就不会进行跳转
.once
通过.once就可以使事件修饰符只起作用一次1
<a @click.prevent.once href="https://www.baidu.com">这是去百度的链接</a>
通过以上代码,当我们单击超链接的时候第一次不会进行跳转,但是再次单击的时候就会进行跳转了
其他事件修饰符也适用
总结
这次学习了vue中的事件修饰符