_MIT
2020-06-29 18:06
传三个参数和传四个参数都没报错。能说明下么?有点儿和html中js传参有点儿区别,懵逼中。。。
上面写错了:
如果你给app.use传递一个有少于四个传参的回调函数,那么express认为此回调函数是正常的路由处理函数,那么回调函数传参依次为 :
req,res,next
const errorHandle = (err,req, res, next)=>{if(err){const {message}= err;res.status(500).json({message:`${message || '请求异常'}`})}} const matchAll = (req,res,next)=>{res.json({msg:'test all use'})} app.use(matchAll) app.use(errorHandle)
express框架层面应该做了识别处理,
如果你给app.use传递一个有四个传参 的回调函数,那么express认为此回调函数是错误处理函数,那么回调函数传参依次为 :
err,req, res, next
如果你给app.use传递一个有三个传参的回调函数,那么express认为此回调函数是错误处理函数,那么回调函数传参依次为 :
req,res,next
Nodejs全栈入门
26586 学习 · 88 问题
相似问题