如何将此状态传递给父组件?
我尝试使用回调,但是由于输出在Text字段中,因此似乎无法正常工作。当在文本字段中更改文本时,onChangeText无法识别吗?我也尝试在Textinput上使用回调,但这似乎也不起作用。也许我将状态设置在错误的位置。
这可能吗?
Child.js
render() {
return (
<View style={styles.screen2}>
<Text>Points - {this.state.dlScoreInput}</Text>
<View>
Parent.js
{{1}}
答案 0 :(得分:0)
第一个问题是您忘记将道具dlScoreInput
传递到<Deadlift2/>
中。 value
是props.dlScoreInput
,因此添加
<Deadlift2
textChange={dlScoreInput => this.setState({ dlScoreInput })}
dlScoreInput={this.state.dlScoreInput}
/>
另一个是您没有将更改传播给父级。您可以采用完全相同的逻辑,将信息从<Deadlift2 />
传递到<Child />
。
但是到那时,您正在传递2级数据。经过一定时间后,最好使用某种类型的全局状态管理系统(例如redux)。但是,如果您坚持要使用本地状态,那么我可以向您展示如何编写。