为了账号安全,请及时绑定邮箱和手机立即绑定

将axios请求的响应推入数组

将axios请求的响应推入数组

HUH函数 2021-03-30 21:02:49
我一直在努力解决这个问题,需要解决方案的帮助。我在JSON中有一个ID数组,并且正在对该数组进行迭代并针对每个ID进行GET请求。然后,我想将这些GET请求的响应推送到数组中。这是我用来将注册信息推送到数组中的函数。它通过一组ID进行迭代:getRegistrations = async (event) => {    let registrations = [];    await event.registrations.forEach(registration => axios.get('/event/getRegistration', {        params: {            id: registration        }    }).then(res => {            registrations.push(res.data.properties)        }    ).catch(err => console.log(err)));    return registrations;};这是我调用该代码的地方:render() {    let event = this.getEvent();    let registrations2 = [{        age: 19,        bio: 'test',        firstName: 'hello',        lastName: 'bye',        password: 'adadas',        telephone: "4920210213"    }];    if (this.props.listOfEvents.events.length !== 0 && !this.props.listOfEvents.gettingList && event) { //check if the array is empty and list has not been rendered yet        let columns = [];        let registrations = this.getRegistrations(event);        console.log(registrations);        let eventProperties = event.properties[0];        Object.keys(eventProperties).forEach(key => columns.push({            title: eventProperties[key].title,            dataIndex: key,            key: key        }));        console.log(registrations);        console.log(registrations2);        return (            <h1>hi</h1>        )    }    return <Loading/>}当我在控制台上登录“ registrations”与“ registrations2”时,它们应该非常相同。但是,在Google Chrome浏览器的javascript控制台中,“注册”显示为“ []”,其中“ registrations2”显示为“ [{...}]”。我知道这是一个与Promise相关的问题(我在实际执行之前要返回注册数组),但是我不知道如何解决它!一些友好的帮助将不胜感激!
查看完整描述

3 回答

?
四季花海

TA贡献1811条经验 获得超5个赞

由于getRegistrations(event)返回的是诺言,因此您应该对中的返回值执行操作then。


代替


let registrations = this.getRegistrations(event);

console.log(registrations);

做这个


this.getRegistrations(event).then(registrations => {

  console.log(registrations);

  // other operations on registrations

});


查看完整回答
反对 回复 2021-04-08
  • 3 回答
  • 0 关注
  • 236 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号