babel-register 和 babel-node 的使用

Babel 6 中 babel-registerbabel-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" } }
    • 在命令行中:
      • 全局安装 babel-nodebabel-node main.js
      • 本地安装 babel-node./node_modules/.bin/babel-node main.js

3. 使用局限

尽管 babel-registerbabel-node 都非常好用,但是由于二者都是实时转码,因而性能上会有一定影响。官方建议将二者仅置于开发环境下使用。而在正式生产环境中部署时,预先编译代码是值得推荐的做法。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券