如何对 vue js 中的本地事件做出反应?
How to react to native event in vue js?
我正在使用 v-html
渲染 html,我在其中绑定到点击事件,如下所示:
<template>
<q-page fill-height>
<div>
<q-btn flat @click="drawer = !drawer" round dense icon="menu" />
<span v-html="html"></span>
</div>
</q-page>
</template>
<script>
...
data: {
return {
id: null
}
},
mounted() {
this.$el.children[0].children[1].addEventListener("click", function(event) {
event.preventDefault();
console.log(event.target.id)
});
}
</script>
这会按预期将 event.target.id
打印到控制台。 event.target.id
的值似乎不能设置为反应式 属性.
如何将 event.target.id
的值设置为等于不同的反应数据 属性 以便我可以正确处理更改?
[从我上面的评论中复制]
您不需要在此处添加本机点击处理程序。 @click.prevent="handleClick($event)"
也可以(其中 handleClick
是自定义方法)。
我正在使用 v-html
渲染 html,我在其中绑定到点击事件,如下所示:
<template>
<q-page fill-height>
<div>
<q-btn flat @click="drawer = !drawer" round dense icon="menu" />
<span v-html="html"></span>
</div>
</q-page>
</template>
<script>
...
data: {
return {
id: null
}
},
mounted() {
this.$el.children[0].children[1].addEventListener("click", function(event) {
event.preventDefault();
console.log(event.target.id)
});
}
</script>
这会按预期将 event.target.id
打印到控制台。 event.target.id
的值似乎不能设置为反应式 属性.
如何将 event.target.id
的值设置为等于不同的反应数据 属性 以便我可以正确处理更改?
[从我上面的评论中复制]
您不需要在此处添加本机点击处理程序。 @click.prevent="handleClick($event)"
也可以(其中 handleClick
是自定义方法)。