我在这里看到许多与同一问题相关的问题,但似乎没有一个与我遇到的问题相匹配,而且更复杂一些。
我正在学习 ReactJS 和 React Native。我正在阅读和关注“Learning React Native”一书中的代码示例:https : //github.com/bonniee/learning-react-native
出于某种原因,在调用 handleTextChange 函数时在下面的代码中调用 this.setState 会导致“this.SetState 不是函数”。错误。我的问题是为什么?与关于同一问题的其他问题不同,我不相信我对 this.stateState 的调用隐藏在回调函数或 if 语句中。为什么是未定义的?
这是我的代码:
class WeatherProject extends Component {
constructor(props) {
super(props);
this.state = {
zip: "",
forecast: null
};
}
_handleTextChange(event) {
this.setState({zip: event.nativeEvent.text});
}
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>
You input {this.state.zip}.
</Text>
<TextInput
style={styles.input}
onSubmitEditing={this._handleTextChange}/>
</View>
);
}
}