遍历对象时访问 v-for 中的索引
Access index in v-for when iterating over object
我正在尝试访问 Vue 的 v-for
绑定中的迭代索引。
这是对象:
const obj = {
obj1: {
some: 'data'
},
obj2: {
some: 'data'
},
obj3: {
some: 'data'
}
}
我正在遍历它:
<li v-for="(object, index) in obj" :key="index">{{ object.some }}</li>
问题是,与遍历 array
相反,在遍历 object
的情况下,index
变量不包含迭代索引(例如 0
, 1
, 2
) 但实际上持有对象名称 obj1
, obj2
, obj3
.
为什么它会这样,在这种情况下我怎样才能取回我宝贵的迭代索引?
根据 documentation 遍历对象时,第二个参数是对象键。要访问索引,您应该添加第三个参数,如下例所示:
<div v-for="(value, name, index) in object">
{{ index }}. {{ name }}: {{ value }}
</div>
我正在尝试访问 Vue 的 v-for
绑定中的迭代索引。
这是对象:
const obj = {
obj1: {
some: 'data'
},
obj2: {
some: 'data'
},
obj3: {
some: 'data'
}
}
我正在遍历它:
<li v-for="(object, index) in obj" :key="index">{{ object.some }}</li>
问题是,与遍历 array
相反,在遍历 object
的情况下,index
变量不包含迭代索引(例如 0
, 1
, 2
) 但实际上持有对象名称 obj1
, obj2
, obj3
.
为什么它会这样,在这种情况下我怎样才能取回我宝贵的迭代索引?
根据 documentation 遍历对象时,第二个参数是对象键。要访问索引,您应该添加第三个参数,如下例所示:
<div v-for="(value, name, index) in object">
{{ index }}. {{ name }}: {{ value }}
</div>