Ecmascript 6 仅向节点添加ES2015模块支持

Ecmascript 6 仅向节点添加ES2015模块支持,ecmascript-6,babeljs,Ecmascript 6,Babeljs,我正在尝试向节点添加导入/导出功能,因为它存在于ES6中 我知道Babel可以用于获得所有ES6功能,但我想知道的是,是否有一种方法可以使用Babel只添加导入/导出功能,如果有,如何添加?是的,您可以使用该插件 该插件将ES2015模块转换为CommonJS 安装它: npm install babel-plugin-transform-es2015-modules-commonjs --save 在您的.babelrc中声明它: { "plugins": [ "transfor

我正在尝试向节点添加导入/导出功能,因为它存在于ES6中

我知道Babel可以用于获得所有ES6功能,但我想知道的是,是否有一种方法可以使用Babel只添加导入/导出功能,如果有,如何添加?

是的,您可以使用该插件

该插件将ES2015模块转换为CommonJS

安装它:

npm install babel-plugin-transform-es2015-modules-commonjs --save
在您的
.babelrc
中声明它:

{
  "plugins": [
    "transform-es2015-modules-commonjs"
  ]
}
npm install babel-plugin-add-module-exports --save
如果您发现自己需要使用ES2015模块语法声明其导出的模块的默认导出,则必须执行以下操作:

var defaultExport = require('./es2015-module').default
要避免这种情况,请安装插件并更新
.babelrc

{
  "plugins": [
    "transform-es2015-modules-commonjs"
  ]
}
npm install babel-plugin-add-module-exports --save
______

要在应用程序中使用此Babel配置,请使用

在应用程序的输入文件中,例如:

// index.js
require('babel-register')
require('./app.js')
然后开始使用ES2015模块语法:

// app.js
import something from './something'

我是像往常一样运行node(node app.js)还是以其他方式运行?你会使用.as in babel register filename.js?@OmryRozenfeld No-阅读
babel register
require hook.-)添加模块导出要求将其自身置于transform-es2015-modules-umd之前。有没有一个原因,为什么相反的东西是在。巴别LRC在这里?