Cómo establecerse reaccionar usando unirest -- javascript campo con reactjs campo con request campo con unirest camp Relacionados El problema

how to setState in react using unirest


0
vote

problema

Español

Estoy tratando de hacer una solicitud de obtención del servidor que usa reaccionar y unirest y almacenar la información que regresa dentro de una variable con public partial class MyWebForm : PageBase, ISupportAJAXPostsBacks 0 , pero siempre recibo el mismo error.

TypeError: No se puede leer la propiedad 'getData' de indefinido.

  public partial class MyWebForm : PageBase, ISupportAJAXPostsBacks 111  
Original en ingles

I'm trying to make a get request from the server using React and Unirest and store the information that comes back inside a variable with setState, but I always get the same error.

TypeError: Cannot read property 'getData' of undefined.

export default class ApartmentsRow extends React.Component {     constructor(props) {         super(props);          this.state = {             data:[]         };       }     componentDidMount(){         var req = unirest("GET", "https://realtor.p.rapidapi.com/properties/detail");         req.query({             "listing_id": "608763437",             "prop_status": "for_sale",             "property_id": "4599450556"         });           req.headers({             "x-rapidapi-host": "realtor.p.rapidapi.com",             "x-rapidapi-key": "34b0f19259mshde1372a9f2958e5p13e3cdjsnf2452cd81a81"         });                req.end(function (res) {             if (res.error) throw new Error(res.error);              console.log(res.body);             this.getData(res.body.listing)         });     }      getData = (allData) =>{     this.setState({         data:allData     }) } 
           
 
 

Lista de respuestas

0
 
vote
vote
La mejor respuesta
 

Porque this En su punto de devolución de llamada a the callback , no apunte a la instancia de clase, Use una función de flecha como esta

  req.end(res => {   if (res.error) throw new Error(res.error);   this.setData(res.body.listing) });   

Además, debe cambiar getData

- & gt; setData

  setData = data => {   this.setState({ data}) }    

o simplemente Retire el setData luego use languages_es.properties0 dentro de la devolución de llamada

  languages_es.properties1111  
 

because this in your callback point to the callback, not point to the class instance, use an arrow function like this

req.end(res => {   if (res.error) throw new Error(res.error);   this.setData(res.body.listing) }); 

also, you should change getData -> setData

setData = data => {   this.setState({ data}) }  

or just remove the setData then use setState inside the callback

req.end(res => {   if (res.error) throw new Error(res.error);   this.setState({ data: res.body.listing }); }); 
 
 

Relacionados problema

2  Cómo subir la imagen en el servidor usando una biblioteca UniREST  ( How to upload image on server using unirest library ) 
Estoy cargando la imagen en el servidor usando una biblioteca UniREST, pero obteniendo un error como {"code":400,"message":"Unknown content type [contentTy...

0  Transaccional no vuelve a rodar en la excepción revisada en el arranque de primavera con los datos JPA  ( Transactional doesnt roll back on checked exception in spring boot with data jp ) 
Tengo una clase usecase con un solo método llamado execute . Guarda una entidad Reconciliation usando paymentRepository.saveRecon y llama un servicio we...

0  Acceso a datos de la llamada API (PHP)  ( Accessing data from api call php ) 
Recientemente comencé a trabajar con una API de https://www.mashape.com/ y yo creo Que he obtenido los datos que necesito, pero no estoy seguro de cómo pued...

0  Conexión de API de descanso - Postman vs Intellij  ( Rest api connection postman vs intellij ) 
Actualmente estoy trabajando con las llamadas API de descanso para escribir un script de automatización en Java en el que una API de descanso se conecta a nue...

1  ¿Por qué estoy recibiendo "java.lang.noclassdeffounderror: kong / unirest / unirest"?  ( Why am i getting java lang noclassdeffounderror kong unirest unirest ) 
Estoy creando una aplicación Java que hace una acción posterior. Necesito hacer un cuerpo HTTPRequestwith para enviar un JSONOBJECT. Estoy usando unirest para...

5  Ningún serializador encontrado para clase Java.io.ByTearrayInputStream  ( No serializer found for class java io bytearrayinputstream ) 
Estoy obteniendo el mensaje de error a continuación al obtener la entidad de usuario de la API de reporte OpenFire. (Estoy envolviendo los puntos finales de m...

2  Conseguir el cuerpo de respuesta usando unirest con C #  ( Getting the response body using unirest with c sharp ) 
Acerca de Unirest para .NET : https://github.com/ Mashape / Unirest-net / Aquí está mi código EXCERPTO: byte[]4 Pregunta: ¿Cómo obtengo el cuerpo...

1  Solicitud de Poste UniREST NODEJS - Cómo publicar el Cuerpo de descanso / JSON complejo  ( Nodejs unirest post request how to post complex rest json body ) 
Siguiendo es el código más unirest que estoy usando para publicar solicitudes simples. <html> <head> </head> <body> <script type="text/JavaScript"> f...

-1  Java: Post-Solicitud para iniciar sesión en el sitio web remoto, que utiliza JavaScript en el botón Iniciar sesión  ( Java post request to login on remote website which using javascript on login b ) 
Estoy usando unirest con Java, tratando de iniciar sesión en una página web remota. Puedo ver con Herramientas de desarrolladores de Chrome y http rastre...

0  Nodejs: Unirest: Cómo subir el archivo con los datos multipartos / formularios  ( Nodejs unirest how to upload file with multipart form data ) 
Tengo una aplicación NODEJS, que está intentando cargar un archivo a una aplicación Springboot llamando a una API usando unirest. a continuación es mi códig...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos