1、相关的修饰符如下
<!-- v-on的修饰符 -->
<!-- 在某些情况下,拿event进行一些事件处理 -->
<!-- 停止冒泡 -->
<button @click.stop="doThis"></button>
<!-- 阻止默认行为 -->
<button @click.prevent="doThis"></button>
<!-- 阻止默认行为,没有表达式 -->
<form @submit.prevent></form>
<!-- 串联修饰符 -->
<button @click.stop.prevent="doThis"></button>
<!-- 键修饰符,键别名-->
<input @key.enter="onEnter"></button>
<!-- 键修饰符,键代码-->
<input @key.13="onEnter"></button>
<!-- 点击回调只会触发一次 -->
<button @click.once="doThis"></button>
2、下面代码冒泡传递
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title-hellovuejs</title>
</head>
<body>
<div id ="app">
<div @click = 'divClick'>
<button @click = 'btnClick'>按钮</button>
</div>
</div>
<script src="../js/vue.js"></script>
<script>
//let(变量) /const(常亮)
const chen1 = new Vue({
el: '#app', //用于挂载要管理的元素
data:{//定义数据
counter: 0
},
methods:{
btnClick(){
console.log('btnClick');
},
divClick(){
console.log('divClick');
}
}
})
</script>
</body>
![](https://img-blog.csdnimg.cn/20210131092707163.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5jYXc=,size_16,color_FFFFFF,t_70)
3、阻止冒泡传递
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title-hellovuejs</title>
</head>
<body>
<div id ="app">
<div @click = 'divClick'>
aaabbbccc
<!-- <button @click = 'btnClick'>按钮</button> -->
<button @click.stop = 'btnClick'>按钮</button>
</div>
</div>
<script src="../js/vue.js"></script>
<script>
//let(变量) /const(常亮)
const chen1 = new Vue({
el: '#app', //用于挂载要管理的元素
data:{//定义数据
counter: 0
},
methods:{
btnClick(){
console.log('btnClick');
},
divClick(){
console.log('divClick');
}
}
})
</script>
</body>
![](https://img-blog.csdnimg.cn/20210131093052861.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5jYXc=,size_16,color_FFFFFF,t_70)
4、其它几个修饰符
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title-hellovuejs</title>
</head>
<body>
<div id ="app">
<!--1 stop修饰符的使用 -->
<div @click = 'divClick'>
aaabbbccc
<!-- <button @click = 'btnClick'>按钮</button> -->
<button @click.stop = 'btnClick'>按钮</button>
</div>
<!--2 prevent修饰符的使用 -->
<br>
<form action="baidu">
<input type="submit" value="提交" @click.prevent = "submitClick">
</form>
<!--3 监听某个键盘的使用 -->
<!-- <input type="text" @keyup = "keyUp"> -->
<input type="text" @keyup.enter = "keyUp">
<!--4 once修饰符的使用 -->
<button @click.once = 'btn2Click'>按钮2</button>
</div>
<script src="../js/vue.js"></script>
<script>
//let(变量) /const(常亮)
const chen1 = new Vue({
el: '#app', //用于挂载要管理的元素
data:{//定义数据
counter: 0
},
methods:{
btnClick(){
console.log('btnClick');
},
divClick(){
console.log('divClick');
},
submitClick(){
console.log('submitClick');
},
keyUp(){
console.log('keyUp');
},
btn2Click(){
console.log('btn2Click');
}
}
})
</script>
</body>