低版本的node(V4.4.4)如何运行koa2(Koa requires node v7.6.0 or higher)

发布于 2022-09-04 18:18:24 字数 1581 浏览 7 评论 0

1.公司虚拟机,不能自己升级node版本,目前版本4.4.4,想要使用koa2.0+,但是koa官网要求Koa requires node v7.6.0 or higher for ES2015 and async function support.这就导致连基本的实例都不能运行

const Koa = require('koa');
const app = new Koa();

// response
app.use(ctx => {
  ctx.body = 'Hello Koa';
});

app.listen(3000);

2.尝试过github上面提到的解决方法,但是好像还是运行不了

If you're not using node v7.6+, we recommend setting up babel with babel-preset-env:

$ npm install babel-register babel-preset-env --save
Setup babel-register in your entry file:

require('babel-register');
And have your .babelrc setup:

{
  "presets": [
    ["env", {
      "targets": {
        "node": true
      }
    }]
  ]
}

3.代码如下

// app.js
require('babel-register');
require('babel-polyfill');

const Koa = require('koa');
const app = new Koa();

// response
app.use(ctx => {
  ctx.body = 'Hello Koa';
});

app.listen(3000);
//.babelrc文件
{
  "presets": [
    "es2015",
    ["env", {
      "targets": {
        "node": true
      }
    }]
  ]
}
//package.json
"scripts": {
    "start":"babel-node app",
    "test": "echo \"Error: no test specified\" && exit 1"
  },


  "dependencies": {
    "babel-cli": "^6.24.0",
    "babel-polyfill": "^6.23.0",
    "babel-preset-env": "^1.2.2",
    "babel-preset-es2015": "^6.24.0",
    "babel-register": "^6.24.0",
    "koa": "^2.2.0"
  }

//报错
clipboard.png
想问一下,在低版本的node怎么使用koa2.0+?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

猫九 2022-09-11 18:18:24

试试这个:

require('babel-core/register')({
  presets: ['es2015-node5', 'stage-0', 'stage-3']
});
require('babel-polyfill');

require('./your-koa-server.js');

将 koa 服务器代码独立出来,babel 配置根据需要修改。

时光暖心i 2022-09-11 18:18:24

升级 Or 换公司,不要试图用Babel这种转译工具,个人开发者自己玩玩还行,在公司用到时候出了问题还得你本人擦屁股,这难度比给自己写的项目擦屁股不是大一点半点儿

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文