API возвращает данные, но не может прочитать свойства

#javascript #reactjs #api #axios

#язык JavaScript #реагирует на #API #аксиос

Вопрос:

Здравствуйте (я учусь реагировать), я работаю с API, который возвращает цены случайные люди, однако проблема у меня возникли, когда я использую Аксиос.вам я получаю ответ от API, и я могу видеть результаты в консоли, но когда я пытаюсь получить к ним доступ, он говорит «не удается прочитать свойства изображения».

Я делаю то, что, когда пользователь нажимает поле ввода, он получает URL-адрес случайной картинки из API, и значение этого входного текста меняется на URL-адрес, но при нажатии на ввод говорится «Не удается прочитать свойства изображения», но API возвращает мне данные в консоли.

Вот что возвращает мне мой API.

Данные API в консоли

Вот мой код.

 class PersonasInsert extends Component {  urlPersonas = "https://randomuser.me/api/?inc=picture";   constructor(props) {  super(props);   this.state = {  peticionImagen: null,  name: "",  last: "",  image: "",  };  }   peticionImagenPersona = async () =gt; {  await axios.get(this.urlPersonas).then(  (response) =gt; {  this.setState({ peticionImagen: response.data.results });  },  (error) =gt; {  console.log(error);  }  );  };   handleChangeImage = async (event) =gt; {  this.peticionImagenPersona();  const peticionImagen = this.state.peticionImagen.picture.large  this.setState({ peticionImagen });  };    render() {  const { peticionImagen } = this.state;  return (  lt;Wrappergt;  lt;Titlegt;Insertar Personalt;/Titlegt;   lt;Labelgt;image: lt;/Labelgt;   lt;InputText  type="text"  value={peticionImagen}  readOnly  onClick={this.handleChangeImage}  /gt;   lt;/Wrappergt;  );  } }  export default PersonasInsert;  

Заранее спасибо.

Ответ №1:

Возвращает ли API массив объектов или один объект? Это похоже на массив из опубликованного вами журнала, вам нужно будет пройти через массив .map или, если вам нужен только первый элемент, сделать что-то вроде этого: this.state.peticionImagen[0].picture.large

Комментарии:

1. Да, он просто возвращает один элемент, я также пытался получить к нему такой доступ, но там написано «Необработанный отказ (ошибка типа): Не удается прочитать свойства null (чтение «0»)»