Как получить API и вывести первый элемент в массиве ответа? - PullRequest
0 голосов
/ 10 ноября 2018

Мое приложение React Native извлекает данные API, и мне нужно напечатать первый индекс ответа, но это не так, и получает весь «озон», например, во всех дочерних элементах родительского массива и когда я печатаю val [0], когда Картографирование у меня ничего не напечатано

the Result I need just one of them

Мой код |

export default class App extends Component {
    constructor(props) {
      super(props);
      this.state = { isLoading: true, dataSource: null };
    }
    async componentDidMount() {
        let API_WEATHER =
              "https://api.weatherbit.io/v2.0/forecast/daily?city=Raleigh,NC&key={API_KEY}";
        fetch(API_WEATHER)
           .then(response => response.json())
           .then(responseJson => {
               console.log(responseJson.data);
               this.setState({
                 isLoading: false,
                 dataSource: responseJson.data
               });
           })
          .catch(error => {
            console.log(error);
       });
    }   
  render() {
    if (this.state.isLoading) {
      return (
        <View style={{ flex: 1, padding: 20 }}>
          <ActivityIndicator size="large" />
        </View>
      );
   }
  let weather= this.state.dataSource.map((val, key) => {
      return (
         <Text key={key}>
            {val.ozone}
         </Text>
      );
 });
return (
    <ScrollView style={styles.container}>
        <ScrollView>
           <View>
              <Text>{weather}</Text>
           </View>
        </ScrollView>
    </ScrollView>
   ); 
 }

В этой части кода, когда я регистрирую респон JSON obj

    .then(responseJson => {
            console.log(responseJson.data);
            console.log(responseJson.data[0]);
            console.log(responseJson.data[0].datetime);
}

У меня есть то, что мне нужно, но при печати в View у меня появляется Erroe посмотрите на изображения

Console

1 Ответ

0 голосов
/ 10 ноября 2018

Вы, вероятно, первый ключ объекта.

obj[Object.keys(obj)[0]];

Также вы можете использовать

Попробуйте цикл for… in и прервитесь после первой итерации

for (var prop in object) {
    // object[prop]
    break;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...