mpvue 列表项组件事件绑定问题

qnyhuwrf  于 4个月前  发布在  其他
关注(0)|答案(2)|浏览(115)

父级列表页,将列表项做成自定义组件,监听子组件的click事件,获取当前子组件实例绑定的数据。
发现前10个子组件实例触发click时,console.log能正确输出该组件绑定的数据,但是后续的子组件实例触发click时输出的并非该组件绑定的数据。

附上代码

父组件:

<card v-for="(item, index) in listData" :data="item" :key="index"></card>

子组件:

<template>
  <div class="component-card" @click="cardClick”>{{ data.name }}</div>
</template>

<script>
export default {
  props: {
    data: {
      type: Object,
      default: {}
    }
  },
  methods: {
    cardClick () {
      console.log(`card click: ${this.data.name} (${this.data.id})`)
    }
  }
}
</script>

附上列表项依次点击前20项输出截图

kqhtkvqz

kqhtkvqz1#

我也遇到了,还上线了,列表最后几个都是同一个,我开始以为 key 的问题,结果还是不行,页面上和Appdata 里都没有错,唯独点击的时候数据是错的,一直是列表第二个或第三个的对象,我反复检查上来看看果然也有人遇到。

PS:
升到 2.0.2 没有这个问题了。

9gm1akwq

9gm1akwq2#

@Cocl-bla-bla 尝试升级到最新版本~

相关问题