嗨,在我的componentWillMount
我设置了像这样的状态
componentWillMount(){
this.timeSheetData().then((timeSheetResponse)=>{
this.setState({comments:timeSheetResponse.comments});
this.setState({spentHours:parseInt(timeSheetResponse.hours)});
alert(this.state.spentHours);
});
});
在我看来
我有这样的TextInput
。我无法在TextInput
上显示该值,但我可以在文字上显示值我不知道它为什么会发生
<TextInput keyboardType='numeric' onChangeText={(spentHours) =>this.setState({spentHours})}
value={this.state.spentHours} />
答案 0 :(得分:0)
输入值必须是字符串,因此您需要删除parseInt
方法中的componentWillMount
:
this.setState({ spentHours: timeSheetResponse.hours });
或在模板中,您需要将输入值转换为包含toString()
的字符串:
<TextInput
keyboardType='numeric'
onChangeText={spentHours => this.setState({ spentHours })}
value={this.state.spentHours.toString()}
/>