gpt4 book ai didi

javascript - Koa 的导出路线

转载 作者:行者123 更新时间:2023-12-03 07:06:13 24 4
gpt4 key购买 nike

我在导出路线时遇到了一个奇怪的问题。由于某种原因,这段代码对我有用:

app.js

import Koa from 'koa'
import routes from './routes/index'

const app = new Koa()

app.use(routes)

app.listen(3000, () => {
console.log('Server listening at http://localhost:3000')
})

export default app

routes/index.js

import Router from 'koa-router'
const router = new Router()

router.get('/', async ctx => {
await ctx.render('index')
})

export default router.routes()
<小时/>

但是当我导出路由函数然后尝试在 app.js 中调用它时,出现错误:

app.js

import Koa from 'koa'
import routes from './routes/index'

const app = new Koa()

app.use(routes())

app.listen(3000, () => {
console.log('Server listening at http://localhost:3000')
})

export default app

routes/index.js

import Router from 'koa-router'
const router = new Router()

router.get('/', async ctx => {
await ctx.render('index')
})

export default router.routes

为什么我用第二种方法却不起作用?

最佳答案

您可能想导出 bound function ,因此其中的 this 将引用路由器对象。

使用 bind operator 可以很好地完成此任务。我相信它已经可用,因为您正在使用 async/await

import Router from 'koa-router'
const router = new Router()

router.get('/', async ctx => {
await ctx.render('index')
})

export default ::router.routes

关于javascript - Koa 的导出路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36819291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com