stopPropagation()是啥?
stopPropagation直译就是停止传播
终止事件在传播过程的捕获,目标处理或起泡阶段进一步传播。
该方法将停止事件的传播,阻止它被分派到其他 Document 节点。
在事件传播的任何阶段都可以调用它。
PS:虽然该方法不能阻止同一个 Document 节点上的其他事件句柄被调用,但是它可以阻止把事件分派到其他节点。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Vue 测试实例 </title>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>
<body>
<div id="app">
<input type="button" value="单击后增加" @click="m +=1" />
<input type="button" value="绑定函数的按钮" @click="add" />
<input type="button" value="绑定可传值函数的按钮" @click="add2(3,4)" />
<div>这个按钮被点击了 {{ m }} 。</div>
</div>
<script>
new Vue({
el: "#app",
data: {
m: 0,
},
methods: {
add: function (e) {
e.stopPropagation();
this.m += 2;
},
add2: function (m, n) {
this.m = m + n;
},
},
});
</script>
</body>
</html>