1.安装插件
npm install mz mz/mz-modules
2.设置
在config.default.js设置以下内容
config.multipart = {
mode: 'file',
};
3.上传
//在控制器写上传
const fs = require('mz/fs');
const path = require('path');
const pump = require('mz-modules/pump');
async doupdate(){
const files = this.ctx.request.files
try{
for(const file of files){
const filename = file.filename
const source = fs.createReadStream(file.filepath) //读取临时地址中的上传文件
const target = fs.createWriteStream(path.join('app/public',filename))
await pump(source,target) //利用管道将流写入对应的路径
}
}finally{
await this.ctx.cleanupRequestFiles() //删除临时文件
}
}