美文网首页web前端技术分享
Node 环境下配置 Babel

Node 环境下配置 Babel

作者: AizawaSayo | 来源:发表于2021-10-13 13:57 被阅读0次

最近用 Koa2 搞 node 服务端应用,鉴于官网文档太散,简单记录下配置 babel 的过程:

1. 安装需要的babel包(全家桶)
npm install --save-dev @babel/core @babel/cli @babel/preset-env @babel/node @babel/plugin-transform-runtime
2. 安装nodemoncore-js(我全局安装了nodemon,没装的话安装在本地也可)
npm install --save nodemon core-js
3. 创建 📃babel.config.json,并写入以下内容:
{
  "presets": [
    [
      "@babel/env",
      {
        "targets": { // 不传问题不大
          "edge": "17",
          "firefox": "60",
          "chrome": "67",
          "safari": "11.1"
        },
        "useBuiltIns": "usage", // 仅引入使用到的 polyfill (转换语法的代码)
        "corejs": "3.6.5" // 当"useBuiltIns"指定为"usage"或"entry"时,此配置才有效果
      }
    ]
  ],
  "plugins": ["@babel/plugin-transform-runtime"]
}

@babel/env的可选参数详见这里。如不传target,默认会将所有 ES2015-ES2020 代码转换为 ES5 兼容版本,可以根据你所需要支持的浏览器进行调整。

4. 使用@babel/register进行动态/即时编译
npm install --save-dev @babel/register 

📃src/index.js

require('@babel/register')
require('./app') // 入口文件

📃package.json

{
  "scripts": {
    "start:register": "nodemon src",
  }
}

这样真正的入口app.js将由 babel 自动转换。

5. 生产环境用babel命令先编译脚本,再运行编译后的版本

在📃package.json添加编译脚本"build" 和 运行编译后代码的"start"启动脚本

{
  "scripts": {
    "build": "babel src -d dist", // -d 是 --out-dir 的缩写
    "start": "node dist/app.js"
  }
{

现在可以npm run start启动了

6. 开发环境用babel-node命令编译脚本:

使用就是简单地将node指令换成babel-node,so easy:

{
  "scripts": {
    "dev": "babel-node src"
  }
}

加上nodemon可以实时热更新项目,必须用--exec以运行非 node 脚本

{
"scripts": {
  "dev": "nodemon --exec babel-node src"
  }
}
7. 让我们来整合一下

为了简化脚本命令,我们先安装下npm-run-all

npm i -S npm-run-all

以及为了跨平台设置环境变量,安装cross-env

npm i -D cross-env

📃package.json

{
  "scripts": {
    "register": "nodemon src",
    "clean": "rm -rf dist",
    "server": "nodemon --exec babel-node src",
    "server:prod": "node dist",
    "build": "babel src -d dist",
    "dev": "NODE_ENV=development npm-run-all server",
    "prod": "NODE_ENV=production npm-run-all clean build server:prod",
    "test": "npm run build && mocha --require @babel/register"
  },
}

开发环境:npm run dev
生产环境:npm run prod

相关文章

  • Node 环境下配置 Babel

    最近用 Koa2 搞 node 服务端应用,鉴于官网文档太散,简单记录下配置 babel 的过程: 1. 安装需要...

  • vue热更新慢的解决办法

    安装插件:‘babel-plugin-dynamic-import-node’ 修改配置文件:babel.conf...

  • 如何在 VSCode 中使用 babel-node 调试 ES6

    安装@babel/node 目录结构 配置launch.json 关键点: 配置runtimeExecutable...

  • babel编译es6环境搭建

    前提是已经安装了node环境。 一:新建目录(babel-es6) 二:安装babel环境依赖 npm insta...

  • Babel 6 升级到 Babel 7

    Babel 6 到 Babel 7 Babel 是个从开发环境到生产环境的中间环境,提供大而全的插件和预设配置,由...

  • 2018-07-05 ES6学习

    一、环境配置 全局安装:babel-cli 本地安装:babel-cli、babel-preset-es2015 ...

  • babel-node: command not found

    查阅babel官方文档如下: @babel/node The babel-node command in Babe...

  • babel环境配置

    一、第一步:创建项目并让它成为npm可以管理的仓库。 新建一个项目,名字假设为test,然后打开命令行,用c...

  • VSCode ES6断点调试

    支持import/export语法 基本环境配置 依赖安装npm i -g @babel/core @babel/...

  • Node.js

    1.环境配置 Node.js Visualstudio Node.js环境配置 Node官网 不建议更改安装位置,...

网友评论

    本文标题:Node 环境下配置 Babel

    本文链接:https://www.haomeiwen.com/subject/ufpsoltx.html