获取MySQL和EXPRESS时的异步问题

编程入门 行业动态 更新时间:2024-10-10 00:22:06

获取<a href=https://www.elefans.com/category/jswz/34/1771279.html style=MySQL和EXPRESS时的异步问题"/>

获取MySQL和EXPRESS时的异步问题

我正在尝试简单地在对象中添加新属性。从我的数据库中获取了objs数组,然后尝试添加一个也从我的数据库中获取的属性。虽然当我尝试操纵它时,我收到的是“未定义”。

  • 这确实是一个紧急问题吗?
  • 我犯了任何愚蠢的错误吗?

这些是目前围绕我的问题。

代码:

exports.getIndex = (req, res, next) => {

    Report.fetchAll().then(([rows, fieldData]) => {

        // console.log(rows);
        const modifiedRows = rows.map(el => {

            Report.fetchUserNameOfReport(el.UserInfo_idPessoa).then(([rows, fieldData]) => {
                console.log(rows);
                return {
                    ...el,
                    userOfReport: 'Joao' //change later to smthing like rows.name
                };
            }).catch(err => console.log(err));
            // return{
            //     ...el,
            //     userOfReport: 'Joao'
            // };

        });

        res.render('user/index', { reports: rows, pageTitle: 'Social Reporter', path: '/' });
    }).catch(err => console.log(err));

};

Obs,如果注释掉并注释Report.fetchUserNameOfReport函数->],则可以使用>

        // return{
        //     ...el,
        //     userOfReport: 'Joao'
        // };

预期结果:

  {
    idComplaint: 83059,
    title: '4444',
    description: '4444',
    image: '4444',
    location: '4444',
    UserInfo_idPessoa: 80068,
    userOfReport: 'Joao'
  }

实际结果:

undefined

谢谢您!

我正在尝试简单地在对象中添加新属性。从我的数据库中获取了objs数组,然后尝试添加一个也从我的数据库中获取的属性。虽然当我尝试...

回答如下:

您从不会在.map中返回任何内容,因此modifiedRows的所有值均为undefined。您可以将它们全部映射到Promise以获取所有值,然后在等待所有Promise解析后访问已修改的行:

更多推荐

获取MySQL和EXPRESS时的异步问题

本文发布于:2024-05-07 21:52:03,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1757418.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:MySQL   EXPRESS

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!