使用props在onPress函数中执行多个功能

时间:2019-12-09 18:59:59

标签: javascript reactjs react-native native onpress

我目前正在创建一个零乱游戏。我快完成了,当我在任何一个框上计时时,图标就会显示在框中。但是,我只能显示一个,不能显示或不显示叉号。到目前为止,我的代码是:My App.js script and the component for each box in the grid

我的app.Js脚本用于管理确定转弯的状态,并且在App.js文件中创建了一个每次按下框时都会更改状态的函数,并将其作为道具传递给Box.js文件。此外,Box.js文件中包含一个显示零位或叉号的函数。当我要将这些函数中的任何一个传递给onPress函数时,它们可以正常工作。只有当我尝试将这些功能放在一起时,问题才开始出现。

这是我尝试过的:onPress= {() => {props.swicthTurn; Change;}

2 个答案:

答案 0 :(得分:0)

您需要调用这两个函数,而不仅仅是传递它们

onPress= {() => {
    props.swicthTurn();
    Change();
}

当您将函数名称传递给onPress属性时,它将为您调用它,但是当您传递内联函数时,您必须执行可能使用的所有子功能。

此外,如果这些函数中的任何一个需要单独传递给它们的事件变量,则需要手动传递该变量:

onPress= {e => {
    props.swicthTurn(e);
    Change(e);
}

答案 1 :(得分:0)

您应该使用onPress = {()=> {props.swictchTurn();更改();} 您应该为onPress提供功能,{() => {}}是函数声明。您应该在其中调用子功能。