如何在中调用onPress函数进行循环.在react native中



我是一个反应原生的新手。我有3个功能

function1()
function2()
function3()

我想在按下一个按钮时多次运行这3个功能。当用户点击第4次,然后再次运行第一个功能,以此类推

这是我尝试过的。但我一直处于4以下的红线,错误如下=预期标识符。ts(1003(

for (let i = 0; i < 4; i++) {
<Icon onPress={this.function[i]}/>
}

请帮忙做的最好方法是什么

您可能需要为Icon分配一个关键道具,如下所示:

<Icon key={i} onPress={this.function[i]} />

在React中,任何迭代的组件都必须有一个关键道具,尤其是在映射数组时。我想for循环应该是一样的。


更新:如果循环Icon组件,它将渲染多次。但我想你只想点击一个Icon组件。然后你可以使用状态来迭代函数。

<Icon onPress={() => {
this.function[i]
if (i === 3) this.setState({ i: 1 })
else this.setState({ i: i + 1 })
}} />

不要忘记在render((函数外添加此状态语句:

state = { i: 1 }

最新更新