Javascript 如何在react中提交表单时进行多api调用

Javascript 如何在react中提交表单时进行多api调用,javascript,reactjs,promise,axios,Javascript,Reactjs,Promise,Axios,我有一个10(可能不同)行数据的表单,提交时我需要为每行调用10(可能不同)个api。我正在使用axios进行api调用。如何以最佳且高效的方式在一次单击中进行多个api调用?Axios支持Promiseapi,因此您可以使用Promise.all一次处理所有10个请求。下面是一个小例子: const请求=[ {url:“https://some.url,body:{some:“body”}, {url:“https://some.other.url,body:{some:“other body

我有一个10(可能不同)行数据的表单,提交时我需要为每行调用10(可能不同)个api。我正在使用axios进行api调用。如何以最佳且高效的方式在一次单击中进行多个api调用?

Axios支持
Promise
api,因此您可以使用
Promise.all
一次处理所有10个请求。下面是一个小例子:

const请求=[
{url:“https://some.url,body:{some:“body”},
{url:“https://some.other.url,body:{some:“other body”},
//你喜欢多少就有多少
];
const promises=requests.map(request=>axios.post(request.url,request.body));
const result=Promise.all(promises.catch)(error=>console.log(`Someting出错:${error}`);

您也可以使用蓝鸟

import Bluebird from 'bluebird';

 deleteRequests = (requests) => {
       let promiseCollection = [];

        try {
            requests.map((request, index) => {
                    promiseCollection.push(axios.delete(request.API + request.ids));
            });
            return Bluebird.all(promiseCollection);
        }
        catch (error) {
        }
}


为什么要进行10次api调用,只需在单个api调用上提交表单数据,因为api一次只接收一项而不是全部,即它是更新项而不是全部更新。最好让api更新所有内容,但我无权更改api。