首页 > 解决方案 > 无法使用 React 中的 Promises 处理来自 API 调用的响应

问题描述

我正在使用一个没有 Redux 或类似东西的反应应用程序。对于网络请求,我使用的是 axios。一切,只是没有。我将一组打印作业 id 和一个带有 axios 的名称作为 JSON 推送到后端,一切正常并创建了组。但是我应该从后端(在邮递员上工作)得到创建的组作为响应。

代码如下所示:

createPrintGroup = (assignments = [], name) => {
    return axios.post(this.URL.concat('add'), {
        print_jobs: map(assignments, 'printjob_id'),
        name: name,
    });
};

示例请求如下所示:

{
    "name": "TestGruppe3",
    "print_jobs": [140, 141]
}

邮递员的回应是:

[
    {
        "createdPrintGroup": [
            {
                "print_group_id": 37,
                "stl_solid_group": "data/print-groups/37",
                "name": "TestGruppe3",
                "date": "2019-05-19T22:00:00.000Z"
            }
        ],
        "assignedPrintJobs": [140,141]
    }
]

现在我要做的是:

printgroupAPI.createPrintGroup(markedAssignments, printgroupName)
 .then(res => console.log("Data from Res: ", res.data[0])).catch(err => console.log("SHIT: ", err));

但是代码只是跳过了 .then 和 .catch 部分并继续我从未到达这些链式调用之一。

谁能告诉我我做错了什么?

标签: reactjsaxios

解决方案


推荐阅读