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

195
Views
Enviar matriz fila a fila usando solicitudes axios en un bucle for (uno por uno)

quiero enviar datos en forma de matriz de filas, que se envía es "nombre" y "valor" de cada fila, (1 fila a la siguiente fila)

a continuación lo guardo en formData.append('data[kelompok_jenjang]', datas[i].name);

luego publique en la url con formData

 data = [ { "name": "Diploma", "indicator": 2, "value": 0 }, { "name": "Dokter", "indicator": 2, "value": 0 }, { "name": "Magister", "indicator": 2, "value": 0 }, { "name": "Profesi", "indicator": 2, "value": 0 }, { "name": "Sarjana", "indicator": 2, "value": 0 }, { "name": "Sarjana Terapan", "indicator": 2, "value": 0 } ] handleSaveTarget = async(e) =>{ e.preventDefault(); let data = this.data; if(data !== undefined){ swal({ title: "Are You Sure ?", text: "Save", icon: "warning", buttons: true, dangerMode: false, }).then((Agree) =>{ if(Agree){ var formData = new FormData(); let sessiondata = JSON.parse(localStorage.getItem("sessiondata")); this.setState({display: true}); let datas = this.state.ref_data; let arrayLength = datas.length; for(var i=0; i < arrayLength; i++){ formData.append('data[id_sp]', sessiondata.i_idunit); formData.append('data[id_point]', 1); formData.append('data[kelompok_jenjang]', datas[i].name); formData.append('data[value]', datas[i].value); axios.post(AppConfig.SaveTarget, formData).then(res => { swal({ title: datas.name, text: "Target Masa Studi Berhasil Disimpan.", icon: "success", dangerMode: false, }) }).catch(err=>{ swal({ title: datas.name, text: "Target Masa Studi Gagal Disimpan.", icon: "error", dangerMode: false, }) }) } } }) }else{ swal({ title: "Data Not Found", text: "Something's Wrong!", icon: "error", // buttons: true, dangerMode: false, }) } }

hay una mejor manera que esta para pasar datos en forma de matriz uno por uno, gracias

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

0

Debe hacer que su función sea asíncrona para usar la palabra clave await para esperar a que finalice cada solicitud

 swal({ title: "Are You Sure ?", text: "Save", icon: "warning", buttons: true, dangerMode: false, }).then(async (Agree) => { if (Agree) { // Your code for (var i = 0; i < arrayLength; i++) { const formData = new FormData(); formData.append("data[id_sp]", sessiondata.i_idunit); formData.append("data[id_point]", 1); formData.append("data[kelompok_jenjang]", datas[i].name); formData.append("data[value]", datas[i].value); await axios .post(AppConfig.SaveTarget, formData) .then((res) => { swal({ title: datas.name, text: "Target Masa Studi Berhasil Disimpan.", icon: "success", dangerMode: false, }); }) .catch((err) => { swal({ title: datas.name, text: "Target Masa Studi Gagal Disimpan.", icon: "error", dangerMode: false, }); }); } } });

Si no le gusta usar async y esperar palabras clave, le sugiero esta solución en su lugar

 swal({ title: "Are You Sure ?", text: "Save", icon: "warning", buttons: true, dangerMode: false, }).then((Agree) => { if (Agree) { // Your code let i = 0; function send() { const formData = new FormData(); formData.append("data[id_sp]", sessiondata.i_idunit); formData.append("data[id_point]", 1); formData.append("data[kelompok_jenjang]", datas[i].name); formData.append("data[value]", datas[i].value); axios .post(AppConfig.SaveTarget, formData) .then((res) => { swal({ title: datas.name, text: "Target Masa Studi Berhasil Disimpan.", icon: "success", dangerMode: false, }); }) .catch((err) => { swal({ title: datas.name, text: "Target Masa Studi Gagal Disimpan.", icon: "error", dangerMode: false, }); }) .finally(() => { i++; if (i < arrayLength) { send(); } }); } send(); } });
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!