从API中搜索和获取,显示可点击的结果,然后显示更多

时间:2018-08-18 11:57:52

标签: react-native

我对原生反应非常新,可以启动一个新项目并在屏幕之间进行导航。我也可以处理布局。但是现在我想做更高级的事情,例如从API中搜索和获取。我想显示可点击的结果,然后显示更多,但我不知道该怎么做。

请教任何人并分享一些帮助吗?我已经搜索了很多,但还没有找到任何东西。这必须是应用程序的常用功能吗?

API:https://facebook.github.io/react-native/movies.json可以说它也有一个"image": "img1.png"

首先,我要创建一个带有搜索框和按钮的页面。如果在其中输入“ in”,它将显示2个结果和一个图像。我要在其中单击每个标题,它会进入下一页,并提供更多信息。是否应该使用ID以及如何完成?

我了解除renderItem={({item}) => {item.title}, {item.releaseYear}} keyExtractor={(item, index) => index}之外的代码行,renderItem在做什么?列出每个结果?如何在那里添加更多?喜欢一些意见等等吗?我试过了但是出错了。

keyExtractor={(item, index) => index}在做什么?

import React from 'react'; 
import { FlatList, ActivityIndicator, Text, View } from 'react-native';

export default class FetchExample extends React.Component {

  constructor(props){ 
    super(props); 
    this.state ={ 
      isLoading: true
    } 
  }

  componentDidMount(){ 
    return fetch('https://facebook.github.io/react-native/movies.json') .then((response) => response.json()) .then((responseJson) => {
      this.setState({
        isLoading: false,
        dataSource: responseJson.movies,
      }, function(){
      });
    })
    .catch((error) =>{
      console.error(error);
    });
  }

  render(){

    if(this.state.isLoading){
      return(
        <View style={{flex: 1, padding: 20}}>
          <ActivityIndicator/>
        </View>
      )
    } else {
      return( 
        <View style={{flex: 1, paddingTop:20}}> 
        <FlatList data={this.state.dataSource} renderItem={({item}) => {item.title}, 
        {item.releaseYear}} keyExtractor={(item, index) => index} /> ); } } render(){}
        </View>
    )
    }
  }
}

很久以前(十年前),我对ASP非常了解,但我仍然知道,但是我对此一无所知。我刚开始使用应用程序,并读到RN是最热​​门的。我应该从哪里开始?除了阅读有关RN的信息外,我还应该从其他地方开始吗?

最诚挚的问候,谢谢!

0 个答案:

没有答案