动态参数调用函数

用户名

我需要调用一个函数并将参数ID传递给它:

 <TouchableOpacity
        onPress={() => this.addInstaPost(myInstaPost[i].postId)}
    >
        <Text style={styles.reply}>
            <Icon family="Entypo" size={19} name="reply-all" /> Reply
        </Text>
    </TouchableOpacity>

此返回错误“未定义不是对象(正在评估'myInstaPost [i] .postId'

如果我删除参数并在文本“重播”后显示以进行调试...。

<TouchableOpacity
    onPress={() => this.addInstaPost()}
>
    <Text style={styles.reply}>
        <Icon family="Entypo" size={19} name="reply-all" /> Reply {myInstaPost[i].postId}
    </Text>
</TouchableOpacity>;

显示完全正常。

知道我在做什么错吗?

这与循环和onPress()有关...

如果我声明变量IE:var currId = myInstaPost [i] .postId;

当我这样做时:

onPress={() => this.addInstaPost(currId)}

然后在addInstaPost内部我发出警报参数,我总是从循环中的第一个元素获取参数...。

但是当我在文本中的某个地方显示它时...用于调试,我得到了正确的信息。

德沃西亚

尝试在.map这种情况下使用该方法

{myInstaPost.map((item, index) => (
<TouchableOpacity onPress={() => this.addInstaPost(item?.postId)} key={index}>
  <Text style={styles.reply}>
    <Icon family="Entypo" size={19} name="reply-all" /> Reply
  </Text>
</TouchableOpacity>
))}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章