繁体   English   中英

返回模型的猫鼬键未定义

[英]mongoose keys of returns model is undefined

我对猫鼬有一个奇怪的问题,我想专门访问模型的密钥。

export const exportUsers = async () => {
    const users = await User.find();
    const headers = ["firstName","lastName"]

    users.forEach((user) => {
        console.log(user);
        // this shows:
        // {
        //    firstName: "zac",
        //    lastName: "taylor"
        // }

        console.log(user.firstName); // undefined; nothing
        
        // if i log the keys for the user:
        console.log(Object.keys(user));

        // i get this weird stuff:
        // [
        //   '$parent',
        //   '$isSingleNested',
        //   '$__',
        //   'isNew',
        //   'errors',
        //   '$locals',
        //   '$op',
        //   '_doc',
        //   '$init'
        // ]

    })

    return csvify.create(exportData, headers, 'Users-List.csv');
}

但是记录整个模型显示它在那里,但是使用Object.keys它不在那里......

我如何直接访问user.firstName

这是因为您正在获取 Mongoose 对象,而不仅仅是 JSON 数据。

如果您只想要纯 JSON 数据,请使用 Lean() :

 const users = await User.find().lean();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM