例如:
app.get("/",function(req,res,next) {
//do some operations
next()
}
这样绑定了一个中间件到路径"/",还可以像这样创建N个。那么需要写"next()"调用下一个中间件。
nextjs不火的原因是:1、宣传力度不够。
2、nextjs受众群里小。
3、nextjs使用难度高,需要有相应的知识储备。Nextjs支持规模化的生产级React应用程序,本质上是一个UI库,用于操作虚拟DOM。
这边有一点是需要认识到的就是,koa和next之间的结合,正常来说我们在使用nextjs的时候,已经被提供了一个server足以让整个next项目运行期俩,那么为什么我们还要引入koa?因为我们需要解决一些问题:
动态路由:比如: www.xxxx.com/a/1 一但刷新,那么就意味着404的错误会发生,
但是这个是make sense的,因为page里面本来就没有a/1这个文件
所以这里我们就要koa来作为中间件来帮助我们解决这个问题
'''
router.get('/a/:id', async (ctx) =>{
const id = ctx.params.id
await handler(ctx.req, ctx.res, {
pathname:'/a',
query: {id}
})
ctx.response = false
})
server.use(router.routes())
'''
上面的这段koa就会帮助我们
当访问了/a/id, koa的服务器就会辅助我们把router里面的事情在做一遍,这样就能帮助整个系统来找到这个动态的路径