小小小白
小小小白
  • 发布:2019-04-18 09:17
  • 更新:2019-07-17 18:51
  • 阅读:998

【报Bug】 点击事件@tap=“xx(item)” xx:function(e) 参数e为什么是undefined

分类:uni-app

详细问题描述

点击事件@tap=“xx(item)方法,进入function(e) e是 undefined item是请求后台传入的

[内容]

重现步骤

[步骤]

[结果]

[期望]

[如果语言难以表述清晰,拍一个视频或截图,有图有真相]

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]
HBuilderX
[IDE版本号]
1.9.1.20190415
[windows版本号]

[mac版本号]

uni-app运行环境说明

[运行端是h5或app或某个小程序?]
微信小程序
[运行端版本号]
微信开发者工具v1.02.1904090
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]

[编译模式是老模板模式还是新的自定义组件模式?]

App运行环境说明

[Android版本号]

[iOS版本号]

[手机型号]

[模拟器型号]

附件

[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]
页面
<div v-for="item in items" :key="item.id">
<div id='item.id' class="scroll-view-item" style="background-color: #FFFFFF;" @tap="gotoNextPage(item)" >
方法
gotoNextPage:function(e){
console.log(e);
console.log('点击值:'+e.stId+'--'+e.stName);
}

联系方式

[QQ]

2019-04-18 09:17 负责人:无 分享
已邀请:
秋凡

秋凡 - 全职接单 高效率、高质量 uniapp项目开发 服务器部署-运维 欢迎咨询 Q:377313813 vx:ran1ever

不要直接传对象吧 e.stId+'--'+e.stName 你这用了俩 上面就搞俩参数

  • 小小小白 (作者)

    只传id 也是undefined

    2019-04-18 09:46

  • 秋凡

    回复 小小小白:怕是你数据有问题哦 而且你前面那个id='item.id' 也是错的 :id='' 这样用

    2019-04-18 09:50

  • 小小小白 (作者)

    @377313813@qq.com:我传上面的items 是有数据的

    2019-04-18 09:58

1***@163.com

1***@163.com

我在那找问题,一直找不到,e undefined和你一样

x***@datainsights.biz

x***@datainsights.biz

我也是,我之前用Cordova+vue打包出来的app通过这种方式能过获取到值,但是在这里就是undefined。
求问各位大佬怎么解决

x***@datainsights.biz

x***@datainsights.biz

如果的item是对象的话,在H5可以打印和得到item值,在vue+Cordova的app也能得到【v-for使用正确的情况下】,而uni-app 是获取不到的。可以采用以下方式得到你想要的

<template>  
    <view v-for="(item, index) in items" :key="item.value" @tap="dianji(index)"></view>  
</template>  

<script>  
    export default {  
        data() {  
            return {  
                items: [] // 服务端获取  
            }  

        }  
        methods: {  
            dianji(e) {  
                console.log(e) // index  
                console.log(this.items[e]) // 你要的item在这了  
            }  
        }  
    }  
    }  
</script>

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