這邊有一點(diǎn)是需要認(rèn)識(shí)到的就是,koa和next之間的結(jié)合,正常來(lái)說(shuō)我們?cè)谑褂胣extjs的時(shí)候,已經(jīng)被提供了一個(gè)server足以讓整個(gè)next項(xiàng)目運(yùn)行期倆,那么為什么我們還要引入koa?
因?yàn)槲覀冃枰鉀Q一些問(wèn)題:
動(dòng)態(tài)路由:比如:www.xxxx.com/a/1 一但刷新,那么就意味著404的錯(cuò)誤會(huì)發(fā)生,
但是這個(gè)是make sense的,因?yàn)閜age里面本來(lái)就沒(méi)有a/1這個(gè)文件
所以這里我們就要koa來(lái)作為中間件來(lái)幫助我們解決這個(gè)問(wèn)題
'''
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就會(huì)幫助我們
當(dāng)訪問(wèn)了/a/id, koa的服務(wù)器就會(huì)輔助我們把router里面的事情在做一遍,這樣就能幫助整個(gè)系統(tǒng)來(lái)找到這個(gè)動(dòng)態(tài)的路徑