1、事件冒泡:不再派发事件。
方法:
event.stopPropagation()

html:
<button data-aid='123' @click="eventFn($event)">事件对象</button>

js:
eventFn(e) {
  e.stopPropagation()
},

终止事件在传播过程的捕获、目标处理或起泡阶段进一步传播。调用该方法后,该节点上处理该事件的处理程序将被调用,事件不再被分派到其他节点。

说明:
该方法将停止事件的传播,阻止它被分派到其他 Document 节点。在事件传播的任何阶段都可以调用它。注意,虽然该方法不能阻止同一个 Document 节点上的其他事件句柄被调用,但是它可以阻止把事件分派到其他节点。

2、阻止默认行为:取消事件的默认动作。
方法:
event.preventDefault()

html:
<button data-aid='123' @click="eventFn($event)">事件对象</button>

js:
eventFn(e) {
  e.preventDefault()
},

说明:
该方法将通知 Web 浏览器不要执行与事件关联的默认动作(如果存在这样的动作)。例如,如果 type 属性是 “submit”,在事件传播的任意阶段可以调用任意的事件句柄,通过调用该方法,可以阻止提交表单。注意,如果 Event 对象的 cancelable 属性是 fasle,那么就没有默认动作,或者不能阻止默认动作。无论哪种情况,调用该方法都没有作用。

3、vue修饰符:

stopPropagation:

<a @click.stop="doStop"></a>

preventDefault:

<a @click.prevent="doPre"></a>

stopPropagation And preventDefault

<a @click.stop.prevent="doTwo"></a>

保持热爱,奔赴山海!

Logo

前往低代码交流专区

更多推荐