javascript - Nodejs5 和 babel 中的 "unexpected token import"?

标签 javascript node.js ecmascript-6 babeljs package.json

在 js 文件中,我使用 import to 而不是 require

import co from 'co';

并尝试通过 nodejs 直接运行它,因为它说导入是“运送功能”并且支持没有任何运行时标志 (https://nodejs.org/en/docs/es6/),但我遇到了错误

import co from 'co';
^^^^^^

SyntaxError: Unexpected token import

然后我尝试使用 babel

npm install -g babel-core
npm install -g babel-cli
npm install babel-core //install to babel locally, is it necessary?

并由

运行
babel-node js.js

仍然有同样的错误,意外的 token 导入?

我怎样才能摆脱它?

最佳答案

来自 babel 6 发行说明:

Since Babel is focusing on being a platform for JavaScript tooling and not an ES2015 transpiler, we’ve decided to make all of the plugins opt-in. This means when you install Babel it will no longer transpile your ES2015 code by default.

在我的设置中,我安装了 es2015 预设

npm install --save-dev babel-preset-es2015

或者用 yarn

yarn add babel-preset-es2015 --dev

并在我的 .babelrc 中启用预设

{
  "presets": ["es2015"]
}

关于javascript - Nodejs5 和 babel 中的 "unexpected token import"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33604470/

相关文章:

javascript - 为什么我的 img 在我硬编码 src URL 时显示,但在我以编程方式分配它时却不显示?

javascript - 使用 socket.io 同步新客户端

javascript - 如何更改此 JavaScript 以使用箭头函数来访问属性

javascript - 如何循环遍历元素并为某些元素调用 onblur 处理程序

mysql - 获取 SequelizeConnectionRefusedError : when running docker with sequelize

linux - 如何卸载或升级我的旧 node.js 版本?

javascript - Node.js socket.io 中的 Websocket 聊天错误

javascript - 在 JavaScript 中使用多个分号有什么影响吗?

javascript - 如何实现 "send to kindle"链接?

javascript - 在页面中使用两个框架实现平滑滚动