gev*_*org 2 javascript node.js ecmascript-6 koa koa2
问题
我正在尝试使用koa2运行简单的 http 服务器,但在运行时遇到问题。
它使用es6预计将在未来的node.js版本中工作,我想知道如何运行它node v6.1.0?
代码
import Koa from 'koa';
const app = new Koa();
// Setup handler.
app.use(async ctx => {
ctx.body = "Hello World!";
});
// Start server.
app.listen(3000);
Run Code Online (Sandbox Code Playgroud)
输出
$ node --version
v6.1.0
$ node --harmony index.js
C:\Users\gevor\WebstormProjects\untitled1\index.js:1
(function (exports, require, module, __filename, __dirname) { import Koa from 'koa';
^^^^^^
SyntaxError: Unexpected token import
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:511:25)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:456:32)
at tryModuleLoad (module.js:415:12)
at Function.Module._load (module.js:407:3)
at Function.Module.runMain (module.js:575:10)
at startup (node.js:160:18)
at node.js:445:3
Run Code Online (Sandbox Code Playgroud)
题
我想知道如何运行我的应用程序?
类似问题
解决方案
我能够找到解决方法并将描述包括安装Babel模块的解决方案
第 1 步- 安装Babel和所需的预设
$ npm install babel-core --save
$ npm install babel-preset-es2015-node5 --save
$ npm install babel-preset-stage-3 --save
Run Code Online (Sandbox Code Playgroud)
第 2 步- 创建index.js具有babel-core/register要求的文件
// set babel in entry file
require('babel-core/register')({
presets: ['es2015-node5', 'stage-3']
});
require('./app');
Run Code Online (Sandbox Code Playgroud)
第 3 步- 将您的示例代码放入app.js
import Koa from 'koa';
const app = new Koa();
// Setup handler.
app.use(async ctx => {
ctx.body = "Hello World!";
});
// Start server.
app.listen(3000);
Run Code Online (Sandbox Code Playgroud)
运行后node index.js服务器像馅饼一样工作import,async,await正在被正确处理。
参考
| 归档时间: |
|
| 查看次数: |
1746 次 |
| 最近记录: |