javascript - 运行 Babel 应用程序时出错

标签 javascript node.js ecmascript-6 babeljs

我目前对 Babel 的测试很简单。

require("babel-core/register");
import Twitter from "twitter";

我收到错误SyntaxError: Unexpected token import,这表明我尚未让 Babel 正常工作。

运行node index.js时它不起作用。它在运行 babel-node index.js

时确实有效

我认为 require hook 应该可以让 ES6 随时工作。如果它只在使用 babel-node 时有效,有人可以解释为什么吗?谢谢!

我的 .babelrc 文件是

{
  "presets": [
    "es2015"
  ]
}

我的 package.json 中的依赖项是

"dependencies": {
    "babel-cli": "^6.3.17",
    "babel-core": "^6.3.26",
    "babel-preset-es2015": "^6.3.13",
    "babel-register": "^6.3.13",
    "twitter": "^1.2.5"
  }

最佳答案

babel-register 不会更改当前文件,而是更改所有后续所需的文件。这意味着你可以做这样的事情:

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

并在 app.js 以及其中所需的所有内容中使用 ES6。

关于javascript - 运行 Babel 应用程序时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34478094/

相关文章:

javascript - 使用lodash按键对对象进行排序,但排序后键丢失

javascript - 无法读取 null 的属性 'removeClass'

javascript - 如何将原型(prototype)应用于现有对象

javascript - 如何在 Node 服务器上运行 .bat 文件?

javascript - 代码未在 Javascript 模块类型脚本源内执行 [ES6]

javascript - 我可以完全停止使用 var 吗?

javascript - 如何在某个 ID 选择器上更改导航链接的颜色?更具体地说,使用视差脚本

javascript - 在 Node.JS 中一次读取一个大文件 N 行

node.js - Argon2 很难在 MacOS 上与 Angular 8 配合使用 : actually not working at all

compilation - 同时使用 TypeScript 和 Traceur 有什么优势?