-
后端
- npm i multer:解析前端发送的formdata格式的头像文件。
- 配置multer(代码较多,封装成文件)
const multer = require('multer') const path = require('path') const fs = require('fs') const upload = multer({ storage: multer.diskStorage( // 配置文件存放目录 destination: (req, file, cb) => { let dest = path.join(__dirname, `../public/userpic/${padZero(req.auth.id).toString()}`) // 用户id命名 // fs.existsSync(目录名):判断文件目录是否存在 if (!fs.existsSync(dest)) { // fs.mkdirSync():没有则创建 fs.mkdirSync(dest, { recursive: true }) } // 新头像文件代替旧头像文件: let olduserpic = fs.readdirSync(dest) // fs.readdirSync(目录名):读取文件目录下的子文件,返回子文件名组成的数组 if (olduserpic.length) { // 若存在文件,则删除 fs.unlinkSync(`${dest}/${olduserpic[0]}`) } cb(null