Vue修改$event
时间: 2023-09-08 07:15:03 浏览: 89
在 Vue 中,可以通过修改 $event 对象来对事件进行一些自定义操作。但是需要注意的是,$event 是一个只读属性,不能直接修改。正确的方式是使用修饰符 `.prevent` 或者 `.stop` 来阻止默认行为或者停止事件冒泡,然后通过访问原始事件对象来进行修改。
例如,在一个点击事件中,可以这样访问原始事件对象:
```
<button @click="onClick">点击</button>
...
methods: {
onClick(event) {
event.preventDefault(); // 阻止默认行为
event.stopPropagation(); // 停止事件冒泡
event.target.innerText = '已点击'; // 修改事件目标的文本内容
}
}
```
需要注意的是,在模板中直接访问原始事件对象会造成性能问题,因为每次访问都需要创建一个新的对象。如果需要多次访问事件对象,可以使用 `$event` 属性并传递给方法:
```
<button @click="onClick($event)">点击</button>
...
methods: {
onClick(event) {
event.preventDefault(); // 阻止默认行为
event.stopPropagation(); // 停止事件冒泡
event.target.innerText = '已点击'; // 修改事件目标的文本内容
}
}
```
这样做可以避免额外的对象创建,提高性能。
阅读全文