我在multer的文档中看到,如果文件夹不存在,multer将不会创建文件夹。如果文件夹不存在,如何创建?
import multer from 'multer'
import crypto from 'crypto'
import { extname, resolve } from 'path'
import slug from 'slug'
export default {
storage: multer.diskStorage({
destination: resolve(__dirname, '..', '..', 'uploads', 'gallery'),
filename: (req, file, cb) => {
const { id, description } = req.body
crypto.randomBytes(8, (err, res) => {
if (err) return cb(err)
return cb(null, id + '/' + res.toString('hex') + '/' + slug(description, { lower: true }) + extname(file.originalname))
// return cb(null, res.toString('hex') + extname(file.originalname))
})
}
})
}
Run Code Online (Sandbox Code Playgroud)
rcn*_*oli 13
我有改变:
import multer from 'multer'
import crypto from 'crypto'
import { extname } from 'path'
import slug from 'slug'
import fs from 'fs'
export default {
storage: multer.diskStorage({
destination: (req, file, cb) => {
const { id } = req.body
const path = `./uploads/gallery/${id}`
fs.mkdirSync(path, { recursive: true })
return cb(null, path)
},
filename: (req, file, cb) => {
const { description } = req.body
crypto.randomBytes(3, (err, res) => {
if (err) return cb(err)
return cb(null, slug(description, { lower: true }) + '_' + res.toString('hex') + extname(file.originalname))
})
}
})
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4990 次 |
| 最近记录: |