Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 控制台输出不显示数组的元素数。数组元素在代码中不可访问_Javascript_Arrays_Reactjs_Promise_Axios - Fatal编程技术网

Javascript 控制台输出不显示数组的元素数。数组元素在代码中不可访问

Javascript 控制台输出不显示数组的元素数。数组元素在代码中不可访问,javascript,arrays,reactjs,promise,axios,Javascript,Arrays,Reactjs,Promise,Axios,我在这个问题上浪费了很多时间,但是,我没能找到这个问题的答案 代码如下: export const fetchZoneSlots = (name, startDate) => async dispatch => { var zoneSchedule=[], promises=[], temp=[],i,j; try { for(i=0;i<7;i++){ const response = await axios.post( 'h

我在这个问题上浪费了很多时间,但是,我没能找到这个问题的答案

代码如下:

export const fetchZoneSlots = (name, startDate) => async dispatch => {

  var zoneSchedule=[], promises=[], temp=[],i,j;
  try {

    for(i=0;i<7;i++){

      const response = await axios.post(
        'http://localhost:3090/zoneslots',
        {name, date: startDate}
      );

      promises.push(response);

      startDate= moment(startDate,'YYYY-MM-DD').add(1,'day').format('YYYY-MM-DD');
    }

    axios.all(promises).then(function(results) {
      results.forEach(function(response) {
          temp.push(response.data);
      });
    });
    console.log(temp);

    dispatch({ type: ZONE_CHANGE, payload: temp });
  } catch (e) {
    dispatch({ type: ZONE_ERROR, payload: 'Zone information cannot be fetch' });
  }
};
export const fetchZoneSlots=(name,startDate)=>async dispatch=>{
var zoneSchedule=[]、Promissions=[]、temp=[]、i、j;
试一试{

对于(i=0;iput
wait
before
axios.all(…)。然后(…)
在执行分派之前等待所有承诺:

await axios.all(promises).then(function(results) {
  results.forEach(function(response) {
      temp.push(response.data);
  });
  return;
});

您在“then”之外进行控制台输出。数据尚未存在。但是,当您在控制台日志中展开数组时,数据已到达。当您输出指向对象的指针时,其内容可能会更改。