首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在节点中使用Koa2与Babel

在节点中使用Koa2与Babel
EN

Stack Overflow用户
提问于 2016-09-08 03:04:55
回答 1查看 993关注 0票数 1

我知道我漏掉了一些东西。我通过babel运行节点,并在我的服务器上使用koa2。对此我还不太清楚,因为我已经在网上引用了很多东西。

版本:节点6.4,babel-core 6.14.0,babel-polyfill":6.13.0

得到一个有趣的错误。看上去好像发电机没有被制造出来。

代码语言:javascript
复制
assert.js:89
  throw new assert.AssertionError({
  ^
AssertionError: app.use() requires a generator function
    at Application.app.use (/Users/administrator/Dropbox/Development/moonlite/moonlitewww/node_modules/koa/lib/application.js:106:5)

我想说的是:

Package.json

代码语言:javascript
复制
"start:dev": "node -r babel-core/register index.js",

.Babelrc

代码语言:javascript
复制
{
  "presets": ["es2015", "react", "stage-3"]
}

Index.js

代码语言:javascript
复制
require("babel-polyfill");
import nodeServer from "./web-server.js";
var config = {
  prod: process.env.NODE_ENV === "production",
  serverPort: process.env.PORT || 3000
};
nodeServer(config);

web-server.js

代码语言:javascript
复制
import Koa from 'koa';
import koaRouter from 'koa-router';
import send from 'koa-send';
import serve from 'koa-serve';
import logger from 'koa-logger';

const router = koaRouter();
const app = new Koa();

export default (config) => {

  app.use(logger());
  app.use(serve(__dirname + '/client/build'));

  app.use(router.routes());
  app.use(router.allowedMethods());

  app.listen(config.serverPort, () => {
    console.log('Server running on port:' + config.serverPort);
  });

};

我在这里错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-09 20:45:49

我搞错了。我将包从另一个package.json文件中合并,然后koa被还原回1.x分支。在追逐一只红色的鱼,以为那是巴贝尔。

如果您看到类似的错误,请检查您的koa版本,然后升级到koa2,如下所示:

npm install koa@next --save

“现在你知道了,知道是战斗的一半.”

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39381969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档