You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue中如何获取触发事件元素的key属性值?避免冗余赋值

解决方案

Vue的key是框架内部用于跟踪节点身份的特殊属性,不会被渲染到最终的DOM元素上,所以没法直接通过event.target这类方式获取它的值。

你可以直接把循环中的key作为参数传递给点击函数,避免冗余绑定data-key:

<script setup>
function onButtonClick(key) {
  alert('Key: ' + key)
}
</script>

<template>
  <button @click="onButtonClick(key)" v-for="key in [1, 2, 3, 4]" :key="key">
    Get {{ key }}
  </button>
</template>

<style>
button {
  display: block; 
  margin-bottom: 5px;
}
</style>

如果你的循环项是对象(比如v-for="item in list"),也可以直接传递item.id这类作为key的字段,逻辑完全一致。

内容的提问来源于stack exchange,提问作者R.P. Pedraza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 20:52:07