22

axios で不明な数 (1 つ以上) の AJAX リクエストを処理する必要がありますが、応答の処理方法がわかりません。次のようなものが欲しい:

let urlArray = [] // unknown # of urls (1 or more)

axios.all(urlArray)
.then(axios.spread(function () {
  let temp = [];
  for (let i = 0; i < arguments[i].length; i++)
    temp.push(arguments[i].data);
}));

引数には、axios によって送信されたコールバック応答が含まれます。問題はarguments、実際の応答ではなく、指定された文字列 URL が含まれていることです。この問題を解決するにはどうすればよいですか?

4

1 に答える 1

45

どこかで実際のリクエストを行う必要があります。そして、結果の配列を受け取るためspreadだけに使用しないでください:then

let urlArray = [] // unknown # of urls (1 or more)

let promiseArray = urlArray.map(url => axios.get(url)); // or whatever
axios.all(promiseArray)
.then(function(results) {
  let temp = results.map(r => r.data);
  …
});
于 2016-05-10T21:48:21.730 に答える