这里要实现显示一个Tabbar栏的效果,其中一行代码v-for=“item in titles”
数据传输过去了,但没有展示,
报错信息
Property or method “item” is not defined on the instance but referenced during render.

原因使用了item项,却没有在data()中定义,这里item是遍历titles数组的固有属性,不用在data()里再次定义
了解v-for循环数据,当用for来更新已经被渲染的元素时,vue的“就地复用”策略,不会改变数据项的顺序的,如果想要重新排序,需要为每项添加key(也就是每项的唯一id)
当使用v-for正在更新已渲染的元素列表时,它默认使用“就地复用”策略。如果数据项的顺序被改变,vue将不是移动元素来匹配数据的顺序,而是简单的复用此处的每个元素,并且确保他在特定索引下显示已被渲染过的每个元素。经常在列表渲染输出中使用。
修改语句

     v-for="(item, index) in titles
      :key="item.index"
  正常显示
 添加key值,这个key值也是Vue官方建议使用的
Logo

前往低代码交流专区

更多推荐