如何在 v-for 中获取键、值和索引
how to get key, value and index in v-for
我正在使用 v-for 循环对象,我需要访问键、值和索引。
我见过很多访问其中两个的方法,这很简单,但找不到如何访问所有三个。
我找到了解决方法,但它非常混乱且难以阅读。
<div v-for="idx in Object.keys(PointsAvailable[0]).length" :key="idx">
<PointSquare
:Value="Object.keys(PointsAvailable[0])[idx-1]"
:Availability="PointsAvailable[0][Object.keys(PointsAvailable[0])[idx-1]]"
:reference="idx-1">
</PointSquare>
</div>
有更好的方法吗?
您可以使用 Object.entries(obj)
获取对象的键和值并获取索引,您可以将 for 循环定义为:
<div v-for="(value, index) in Object.entries(points)" :key="index">
{{ value[0] }} {{ value[1] }} {{ index }}
</div>
value[0]是key,value[1]是value,index
您也可以尝试 v-for="(value, key, index) in PointsAvailable"
并相应地引用它们。从 Vue 文档中查看此示例
<div v-for="(value, name, index) in object">
{{索引}}。 {{名称}}:{{值}}
我正在使用 v-for 循环对象,我需要访问键、值和索引。 我见过很多访问其中两个的方法,这很简单,但找不到如何访问所有三个。
我找到了解决方法,但它非常混乱且难以阅读。
<div v-for="idx in Object.keys(PointsAvailable[0]).length" :key="idx">
<PointSquare
:Value="Object.keys(PointsAvailable[0])[idx-1]"
:Availability="PointsAvailable[0][Object.keys(PointsAvailable[0])[idx-1]]"
:reference="idx-1">
</PointSquare>
</div>
有更好的方法吗?
您可以使用 Object.entries(obj)
获取对象的键和值并获取索引,您可以将 for 循环定义为:
<div v-for="(value, index) in Object.entries(points)" :key="index">
{{ value[0] }} {{ value[1] }} {{ index }}
</div>
value[0]是key,value[1]是value,index
您也可以尝试 v-for="(value, key, index) in PointsAvailable"
并相应地引用它们。从 Vue 文档中查看此示例
<div v-for="(value, name, index) in object">
{{索引}}。 {{名称}}:{{值}}