叫西红柿炒番茄
叫西红柿炒番茄
  • 发布:2020-11-10 10:35
  • 更新:2021-11-11 11:56
  • 阅读:3315

【报Bug】在uniapp使用v-for嵌套v-for时,然后定义click事件传值报错

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 10.15.7

第三方开发者工具版本号: 1.03.2010240

基础库版本号: 2.13.0

项目创建方式: CLI

CLI版本号: 2.0.0-29320201014001

示例代码:
<template>  
    <view class="pay-success">  
      <view  
        v-for="(item, index) in [  
          { x: [1234, 2, 43, 34] },  
          { x: [555, 2, 43, 34] },  
          { x: [44, 2, 43, 34] },  
          { x: [22, 2, 43, 34] },  
          { x: [33, 2, 43, 34] },  
        ]"  
        :key="index"  
      >  
        <view v-for="(name, i) in item.x" :key="i" @click="click(name)">  
          {{ index }} + {{ name }}  
        </view>  
      </view>  
    </view>  
</template>  

<script>  
  export default {  
    data() {  
      return {};  
    },  
    methods: {  
      click(e) {  
        console.log(e);  
      },  
    },  
  };  
</script>  

<style lang="scss" scoped></style>  

操作步骤:

直接触发点击事件

预期结果:

报错,无法获取name参数

实际结果:

无法获取参数

bug描述:

触发点击时间直接报错
报错位置vendor.js
getExtraValue方法

2020-11-10 10:35 负责人:无 分享
已邀请:

最佳回复

DCloud_UNI_LXH

DCloud_UNI_LXH

bug已确认,已加分,下版修复。
目前请不要在模板中使用方法去调用循环数据

DCloud_UNI_LXH

DCloud_UNI_LXH

如果使用这样的数据进行v-for嵌套,可以在data中定义一个变量然后再在模板中使用,微信报错是因为微信官方不支持复杂对象在模板中

  • wsWmsw

    测试邮箱有没有验证

    2021-03-12 19:22

  • wsWmsw

    你好,这条评论是解决方案吗?我的第 1 层被循环的数据就是 data,但第二层 click 事件中还是无法向方法中传递数据。最后是通过微信的 dataset 解决的。

    2021-03-12 19:24

DCloud_UNI_GSQ

DCloud_UNI_GSQ

HBuilderX 3.0.0+ 已修复

1***@qq.com

1***@qq.com

在点击事件方法中加上传参时报错,不加传参时可以,可以在元素上加上data属性传参

该问题目前已经被锁定, 无法添加新回复