使用 Multer 上传多张图片时如何获得 req.files.path
How do I get the req.files.path when uploading multiple images with Multer
我想得到一个字符串数组,每个字符串都是我保存图像的路径,所有图像都被保存到一个文件夹中。
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
});
当我 运行 这个得到 'undefined'.
谢谢
简答
var paths = req.files.map(file => file.path)
稍微长一点的回答
req.files
是一个对象(文件)数组,所以你必须使用Array.prototype.map()
创建一个只包含每个文件路径的新数组。
你也可以用这个方法
var path = req.files.objName[0].path
数字 0 因您要访问的对象而异
我想得到一个字符串数组,每个字符串都是我保存图像的路径,所有图像都被保存到一个文件夹中。
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
});
当我 运行 这个得到 'undefined'.
谢谢
简答
var paths = req.files.map(file => file.path)
稍微长一点的回答
req.files
是一个对象(文件)数组,所以你必须使用Array.prototype.map()
创建一个只包含每个文件路径的新数组。
你也可以用这个方法
var path = req.files.objName[0].path
数字 0 因您要访问的对象而异