gpt4 book ai didi

react-native - 在 React Native 中调用两个函数 onValueChange

转载 作者:行者123 更新时间:2023-12-04 03:58:56 25 4
gpt4 key购买 nike

TextInput 改变时如何调用函数DoMath

state = {
foo: 2,
bar: 3,
Total: 0,
}

DoMath = () =>{
var foo = this.state.foo;
var bar = this.state.bar;

this.state.Total= foo + bar;
this.setState({Total: this.state.Total})
}

<TextInput
onChangeText={(foo) => this.setState({foo})}
value={this.state.foo}
selectTextOnFocus>
</TextInput>

我尝试过 onChangeText={(foo) => this.setState({foo}); DoMath;} 但它不起作用。

最佳答案

您需要将箭头函数的主体用大括号括起来。如果你只是做 onChangeText={(foo) => this.setState({foo}); DoMath;},这将被解释为两个语句:

JS看到的是:

onChangeText={(foo) => { return this.setState({foo}); }; DoMath;}

所以 DoMath 在创建组件时会被评估,但不会在组件的文本更改时运行。

改成:

onChangeText={(foo) => { this.setState({foo}); DoMath(); } }

它应该可以工作。

关于react-native - 在 React Native 中调用两个函数 onValueChange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48999099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com