需要知道的是:
@click.stop="xxx"
@click.prevent="xxx"
@keypress.enter="xxx"
:money.sync="total"
.stop
作用:阻止事件冒泡
<template>
<div id="app">
<div @click="show1()">
<button @click.stop="show2()">ok</button>
</div>
</div>
</template>
<script>
export default {
name: "App",
methods: {
show1() {
console.log("show1");
},
show2() {
console.log("show2");
},
},
};
</script>
因为阻止了冒泡事件,以上代码最后输出结果为 show2
!
.prevent
作用:阻止事件的默认行为,例如点击表单提交按钮时会提交,点击超连接时会跳转到对应的地方等,利用 .prevent
可以阻止这些默认行为。如:
<template>
<div id="app">
<a @click.prevent href="www.bilibili.com">bilibili</a>
</div>
</template>
不能点击跳转了!!!
.enter
作用:监听回车事件
一般用于@keypress事件,在这个输入事件里按下回车就会触发回车事件,如:
<template>
<div id="app">
<input @keypress.enter="y" />
</div>
</template>
<script>
export default {
name: "App",
methods: {
y() {
console.log("回车按下了");
},
},
};
</script>
.sync
重中之重,看我已经写好的博客:$emit、v-on与.sync修饰符