前面的话
最近做项目用到这两个模块,用法记录一下。
原文地址:babel-register 和 babel-node 的使用
使用
Babel 6 中 babel-register 和 babel-node 两个模块是开发时非常好用的转码工具。先来看一下如何使用:
1、 babel-register
-
安装:npm install babel-register
-
作用:babel-register 实际上为require加了一个钩子(hook),之后所有被 node 引用的 .es6、.es、.jsx 以及 .js 文件都会先被 Babel 转码。
-
使用示例:
//index.js console.log('Hello World!'); //register.js require("babel-register"); require("./index.js"); node register.js
2、 babel-node
-
安装:npm install babel-node
-
作用:替代 CLI 中的 node 命令,可以直接运行采用 ES6 语法编写的代码。
-
使用示例:
在 npm scripts 中: { "scripts": { //"script-name": "node main.js" "script-name": "babel-node main.js" } }
3、 使用局限
尽管 babel-register 和 babel-node 都非常好用,但是由于二者都是实时转码,因而性能上会有一定影响。官方建议将二者仅置于开发环境下使用。而在正式生产环境中部署时,预先编译代码是值得推荐的做法。