Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

505
Views
Axios puso retorno indefinido [React JS + Axios]

Hola a todos estoy haciendo un axios puesto para actualizar mis datos. Sin embargo, estoy recibiendo una respuesta indefinida. Gracias de antemano

función que llama a los Axios:

 export function exUpdateMovie(movie) { Axios.put(baseURL + "/api/update", { movieName: movie.movieName, movieReview: movie.movieReview, id: movie.id, }) .then((response) => { // console.log(response); return response; }) .catch((e) => { console.log(e); return e; }); }

función en app.js que llama a la función exUpdateMovie(película):

 const handleUpdateMovie = (movie) => { console.log("UpdateMovie Passed!"); try { const res = exUpdateMovie(movie); alert(res?.data); } catch (error) { console.log(error); } };

Salida cuando alerto mi respuesta es: indefinido

ASENTARSE:

  • necesita agregar async y esperar en handleUpdateMovie
  • necesita devolver el Axios haciendo return Axios.put()

Saludos compañero por ayudarme. Muchas gracias

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Sí, porque su llamada API está devolviendo una promesa en la que debe esperar hasta que se complete la ejecución de la promesa, así que haga que su función sea asíncrona y ajuste la llamada API con await.

 export async function exUpdateMovie(movie) { const result = await Axios.put(baseURL + "/api/update", { movieName: movie.movieName, movieReview: movie.movieReview, id: movie.id, }) return result } const handleUpdateMovie = async (movie) => { console.log("UpdateMovie Passed!"); try { const res = await exUpdateMovie(movie); alert(res?.data); } catch (error) { console.log(error); } };
about 4 years ago · Juan Pablo Isaza Report

0

Porque exUpdateMovie no devuelve nada. Devolver la promesa:

 export function exUpdateMovie(movie) { return Axios.put(/* all your Axios code */); }

Luego, cuando consuma el resultado, trátelo como una Promesa:

 exUpdateMovie(movie).then(res => { alert(res?.data); });
about 4 years ago · Juan Pablo Isaza Report

0

por favor, coloque return fuera de axios porque cuando coloca return dentro de las funciones, entonces o lo atrapa, regresa desde allí y fuera de axios no hay retorno, puede hacerlo como se muestra a continuación:

 export function exUpdateMovie(movie) { var resultInfo = {}; Axios.put(baseURL + "/api/update", { movieName: movie.movieName, movieReview: movie.movieReview, id: movie.id, }) .then((response) => { // console.log(response); resultInfo = response; }) .catch((e) => { console.log(e); resultInfo = e; }); return resultInfo; }

o puedes usar este código:

 export function async exUpdateMovie(movie) { var resultInfo = await Axios.put(baseURL + "/api/update", { movieName: movie.movieName, movieReview: movie.movieReview, id: movie.id, }) return resultInfo; }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!