next()常用于app.use()中,使用方法即使用与不使用的区别如下:
app.use('/',function (req,res) {
res.send('sucess');
})
app.get('/',function (req,res) {
res.send('sucess');
})
如上代码,运行后访问服务器,只会在页面显示一个“success",因为服务器匹配到一次路由以后就不再向下匹配。而如果加上next(),它就可以继续向下匹配,方法如下:
app.use('/',function (req,res,next) {
res.send('sucess');
next();
})
app.get('/',function (req,res) {
res.send('sucess');
})
如上代码,就会在页面中显示两个”success“,因为第一次匹配到路由以后会执行next()函数,进而可以继续匹配后面的路由。
这种方法用途也比较多,不如当第一次匹配到路由时,可以判断用户是否处于登陆状态,若处于登陆状态,就可以执行next()函数,进而匹配后面的路由加载数据,若不处于登陆状态,则不执行next()函数,也就不会加载数据。