React-Native _this5.setState 在更改 TextInput 中的文本时不是一个函数?



我目前正在学习 React-Native,所以如果答案出现在其他地方,我们深表歉意。但是在我的应用程序中,每当我更改文本输入中的文本时,程序都会崩溃并显示错误_this5.setState is not a function

即,如果我搜索"您好",一切正常。但是当我将"Hello"更改为"Hell"时,程序会因该错误而崩溃。

这是我的代码

export default class App extends React.Component {
constructor(props){
super(props)
this.state = {
apiKey: 'insertMyAPIKey',
isLoading: true,
text: ''
}
this.setInputState = this.setInputState.bind(this)
}
render() {
return (
<View style={{padding: 10}}>
<TextInput
style={{height: 40}}
placeholder="Search For Summoner!"
value={this.state.text}
onChangeText={(text) => this.setState({
text: text
})}
clearButtonMode="while-editing"
/>
<Button 
onPress={() => {
this.MyFunctionsToRun(this.state.text)
}}
title="Search"
color="#841584"
/>
<Text style={{padding: 10, fontSize: 20}}>
Searching for summoner: {this.state.text}
</Text>
<Text>
The summoner ID: {this.state.summonerID}
</Text>
<Text>
The summoner Rank: {this.state.leagueName}, {this.state.tier} {this.state.rank}, {this.state.leaguePoints}
</Text>
<Text>
The Summoner Win Rate: {this.state.winRate}
</Text>
<View>
<FlatList 
data={this.state.lastTenGames}
renderItem={({item}) => <Text>{item.lane}</Text>}
/>
</View>
</View>
);
}
}

你可以试试这个

onChangeText={text => (this.state.text = text)}

或使用其他功能

onChangeText={this.changeText}
changeText = text => {
this.setState({text: text});
};

我希望它对你有用:D

相关内容

  • 没有找到相关文章

最新更新