如何对Vue JS中的本机事件做出反应?

时间:2020-10-30 16:38:51

标签: vue.js event-handling

我正在使用v-html渲染html,其中我将其绑定到如下的click事件:

<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的值等于其他反应性数据属性,以便我可以正确处理更改?

1 个答案:

答案 0 :(得分:1)

[摘自我上面的评论]

您无需在此处添加本地点击处理程序。 @click.prevent="handleClick($event)"也可以使用(其中handleClick是自定义方法)。