Vue:事件对象不可访问



我想发出一个标准的JavaScript事件(除了 Vue 事件),所以我在 Vue 组件中有以下代码:

<template>
<div>
<input
type="text"
class="input"
v-model.trim="value"
:id="id"
:placeholder="placeholder"
:disabled="disabled"
:required="required"
:readonly="readonly"
autocomplete="off"
@keyup="keyUp"
@focus="focus"
@click="click"
@dblclick="dblclick"
@change="change">
</div>
</template>
<script>
export default {
methods: {
change () {
// Vanilla event
let element = document.querySelector(`#${this.id}`);
let event = new Event('change', { 'bubbles': true, 'cancelable': false });
element.dispatchEvent(event);
// Vue event
this.$emit('change');
}
}
}
</script>

但是,我在参考原版事件时收到以下错误:

'Event' is not defined

我错过了什么?

这是一种预感,但我怀疑这可能与秩序有关。Vue 在其附加到的元素中剥离事件侦听器。创建 vue 后,尝试附加所有事件侦听器。我们有 vue 与现有的 javascript 代码愉快地共存,包括事件监听器。但我们不喜欢它,我们在摆脱旧东西方面取得了良好的进展。(你真的需要吗?

最新更新