【发布时间】:2018-09-05 16:57:32
【问题描述】:
我正在努力提取平面列表并使用标题刷新。在执行方面,微调器不会出现。请告诉我我必须解决什么问题。我们需要使用刷新控制吗?
环境
react-native-cli: 2.0.1
反应原生:0.52.0
节点:v8.9.4
class ListSwipe extends Component {
constructor(props) {
super(props);
this.state = { keywords: "", isLoading: true , results:[] , oldresults:[] , isFetching: false }
}
componentDidMount() {
return fetch('https://reactnativecode.000webhostapp.com/FruitsList.php')
.then((response) => response.json())
.then((responseJson) => {
this.setState({
isLoading: false,
isFetching: false ,
results: responseJson,
oldresults: responseJson
},...
makeRemoteRequest() {
....
}
handleRefresh = () => {
this.setState({ isFetching: true }, function() {
this.makeRemoteRequest()
});
}
....
<ScrollView style={styles.scroll}>
<Text> Keywords : {this.state.keywords} </Text>
{this.state.loading ? (
<Spinner />
) : <FlatList
extraData={this.state}
data={this.state.results}
keyExtractor={(item, index) => item.id}
renderItem={( {item} ) => {
return <ListItem>
<Text>{item.fruit_name}</Text>
</ListItem>
}}
refreshing = {this.state.isFetching}
onRefresh ={this.handleRefresh}
onRefresh={() => this.onRefresh()}
/> }
</ScrollView>
【问题讨论】:
-
在 ScrollView 中添加 refreshControl,如 refreshControl={
} -
对于任何可能犯了我的错误的人,请注意“refreshControl”属性 - 它需要有一个小写的“r”
标签: javascript react-native react-native-flatlist