【问题标题】:How do I get the req.files.path when uploading multiple images with Multer使用 Multer 上传多个图像时如何获取 req.files.path
【发布时间】:2019-09-10 03:57:37
【问题描述】:

我想得到一个字符串数组,每个字符串都是我保存图像的路径,所有图像都保存到一个文件夹中。

router.post("/", upload.array("songImage"), (req, res, next) => {
    // console.log(req.files[0].originalname);
    var file = req.files;
    console.log(file.path) // THIS IS WHERE I WANT TO GET THE ARRAY OF FILE PATHS
    const song = new Song({
      _id: new mongoose.Types.ObjectId(),
      name: req.body.name,
      composer: req.body.composer,
      productImage: req.files.path
    });

当我运行它时,得到“未定义”。

谢谢

【问题讨论】:

  • var paths = req.files.map(file => file.path)
  • MadWard 你是神!!!非常感谢它的工作,请将您的答案作为解决方案发布,以便我将其标记为正确。
  • 当然,完成。不想发垃圾邮件,所以我添加了一些解释。

标签: node.js express multer


【解决方案1】:

简答

var paths = req.files.map(file => file.path)

答案稍长

req.files 是一个对象(文件)数组,所以你必须使用Array.prototype.map() 创建一个只包含每个文件路径的新数组。

【讨论】:

    【解决方案2】:

    你也可以用这个方法

    var path = req.files.objName[0].path
    

    数字 0 因您要访问的对象而异

    【讨论】:

      猜你喜欢
      • 2021-04-04
      • 2020-09-26
      • 1970-01-01
      • 2018-09-11
      • 1970-01-01
      • 2020-12-25
      • 2018-09-16
      • 2023-02-23
      • 2018-12-19
      相关资源
      最近更新 更多