Vue.js 在对象上迭代时v-for中的访问索引

Vue.js 在对象上迭代时v-for中的访问索引,vue.js,vuejs2,v-for,Vue.js,Vuejs2,V For,我正在尝试访问的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> 问题在于,与在数组

我正在尝试访问的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>
问题在于,与在数组上循环相反,在这样的对象上循环时,索引变量不包含迭代索引(例如0、1、2),而是实际包含对象名obj1、obj2、obj3

为什么会出现这种情况?在这种情况下,我如何才能获得宝贵的迭代索引?

根据在对象上迭代时的第二个参数是对象键。要访问索引,应添加第三个参数,如下例所示:

<div v-for="(value, name, index) in object">
  {{ index }}. {{ name }}: {{ value }}
</div>
根据迭代对象时的参数,第二个参数是对象键。要访问索引,应添加第三个参数,如下例所示:

<div v-for="(value, name, index) in object">
  {{ index }}. {{ name }}: {{ value }}
</div>
文件:

在对象上迭代时,顺序基于object.keys的枚举顺序,这不能保证跨JavaScript引擎实现的一致性

所以这不是一个好主意。

文档:

在对象上迭代时,顺序基于object.keys的枚举顺序,这不能保证跨JavaScript引擎实现的一致性


所以这不是一个好主意。

谁会读书,谁的处境显然更好。谢谢你,能阅读的人显然处于更好的位置。谢谢facepalm