【问题标题】:How to receive row Id when row is selected选择行时如何接收行ID
【发布时间】:2021-12-04 16:25:23
【问题描述】:

我正在使用 v-data-table,我想在选择行时获取行 ID。

这是我的代码

<v-data-table
          item-key="id"
          v-model="selected"
          show-select
          :headers="headers"
          :items="users">
</v-data-table>

当我选择一行时给我的东西:

[
{id:2 , name:"kevin" , age : 25 }
]

我需要的东西:

[2]

【问题讨论】:

  • 只需将 selected 数组映射到 ID:selected.map(x =&gt; x.id)
  • 我觉得也许有更好的办法,也许有道具
  • 不确定这里有什么更好的方法。

标签: vue.js nuxt.js vuetify.js


【解决方案1】:

使用 v-data-table 后,您可以使用表中的 v-model。 然后你可以观察你选择的数组并从中获取你想要的字段。

 <v-data-table
  v-model="selected"
  :headers="headers"
  :items="desserts"
  :single-select="singleSelect"
  item-key="name"
  show-select
  class="elevation-1"
>

如您所见,selected 是我在数据部分中定义的数组。

 data () {
return {
  singleSelect: false,
  selected: []
}

【讨论】:

  • 可能你没听懂我的意思。我想获取 id 数组而不是对象数组。
  • 您可以使用“.map”函数使用计算来获取ID。
  • 我正在寻找更好的方法
  • 比计算好?我不认为这是可能的。 v-data-table 组件可以为您提供所选项目,但我认为它不能为您提供该项目的“变体”。 selected 值(正如 @tony19 所写)上的计算道具(如 @Basselalshayeb 建议的那样)可能是实现您想要的最佳方式
猜你喜欢
  • 2010-11-20
  • 1970-01-01
  • 1970-01-01
  • 2012-11-23
  • 2020-05-26
  • 1970-01-01
  • 2012-09-01
  • 1970-01-01
  • 2023-03-06
相关资源
最近更新 更多