Mongoose returns 在具有现有数据的字段上未定义

Mongoose returns undefined on a field with existing data

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

GridFS 架构:

const gfsSchema = mongoose.Schema({
    filename: String
  }, {strict: false});
const GridFs = conn.model('GridFs', gfsSchema, 'posters.files');

使用代码:

GridFs.find({}, (err, files) => {
  console.log(files);
  console.log(files.filename);
});

第一个console.logreturns我所期望的:

[ { _id: 5da3a37a6587f015783637d0,
    length: 3917314,
    chunkSize: 261120,
    uploadDate: 2019-10-13T22:21:54.389Z,
    filename: 'ed49b55f58b1d5ea06ba95f18852e2a3.png',
    md5: '9b52103d5c6f671023290d87b106c9cf',
    contentType: 'image/png' } ]

但是第二个 returns undefined,即使上面的示例显示 filename 字段中存在现有数据。

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

files 是一个数组,因此您需要像

那样调用它
files[0].filename

如果你需要的文件名在第一位,否则你可以根据要求使用索引