我有两个文件,一个是app.js,另一个是api.js。在第一个文件中:
app.use(setHeader)
app.use(api.routes())
app.use(api.allowedMethods())在api.js中,我有:
import KoaRouter from 'koa-router';
const api = new Router();
//Validatekey
const validateKey = async (ctx, next) => {
const { authorization } = ctx.request.headers;
console.log(authorization);
if (authorization !== ctx.state.authorizationHeader) {
return ctx.throw(401);
}
await next();
}
api.get('/pets', validateKey, pets.list);当我运行项目时,会抛出一条错误消息:没有定义路由器。
但是如果我把两个文件写在一起,应用程序就会很好。
有人知道这个问题吗?
我已经用var路由器=require(‘koa’)进行了求解。
发布于 2017-09-08 14:35:40
导入目前没有在nodejs中实现,最新的ES2015(ES6)也不支持它。您将需要使用像Babel这样的转换程序来使用import,我的建议是避免换行器,因为它会导致生产中的性能问题,只需满足需求,就可以工作了。
发布于 2016-11-24 02:48:22
显然,Nodejs不支持import / export语法,使用require可以解决您的问题。
然而,使用import变压器可以使Node.js工作在babel上。
查看下面的答案以获得更多信息,https://stackoverflow.com/a/37601577/972240
https://stackoverflow.com/questions/40769699
复制相似问题