Node.js Mongoose在包含现有数据的字段上返回未定义

Node.js Mongoose在包含现有数据的字段上返回未定义,node.js,mongoose,gridfs,gridfs-stream,Node.js,Mongoose,Gridfs,Gridfs Stream,所以我尝试将GridFS集合与包含其中一些数据的模式相关联,然后用另一个模型填充它 GridFS模式: const gfsSchema=mongoose.Schema({ 文件名:字符串 },{strict:false}); const GridFs=conn.model('GridFs',gfsSchema',posters.files'); 使用的代码: GridFs.find({},(错误,文件)=>{ console.log(文件); console.log(files.filenam

所以我尝试将GridFS集合与包含其中一些数据的模式相关联,然后用另一个模型填充它

GridFS模式:

const gfsSchema=mongoose.Schema({
文件名:字符串
},{strict:false});
const GridFs=conn.model('GridFs',gfsSchema',posters.files');
使用的代码:

GridFs.find({},(错误,文件)=>{
console.log(文件);
console.log(files.filename);
});
第一个
console.log
返回我期望的结果:

[ { _id: 5da3a37a6587f015783637d0,
    length: 3917314,
    chunkSize: 261120,
    uploadDate: 2019-10-13T22:21:54.389Z,
    filename: 'ed49b55f58b1d5ea06ba95f18852e2a3.png',
    md5: '9b52103d5c6f671023290d87b106c9cf',
    contentType: 'image/png' } ]
但是第二个返回
undefined
,即使上面的示例显示
filename
字段中存在现有数据


我需要
filename
字段,以便在填充时可视化图像。

文件是一个数组,因此需要像这样调用它

files[0].filename

如果您需要的文件名在第一位,那么您可以根据要求使用索引

文件
是一个数组,所以它应该是
文件[0]。文件名
。这确实有效。非常感谢您的帮助@Savan Padaliya,Cuong Le Ngoc。