babel使用

2019-03-05

Babel使用

Babel是一个JavaScript编译器,用来将高版本的JavaScript代码编译为兼容性更强的低版本代码,这样我们在开发中就可以尽情使用高版本的JS特性而不必考虑版本兼容性了。

安装

  1. 安装Babel CLI(命令行工具)

    npm install --save-dev babel-cli
    
  2. 创建Script:

    //package.json
       
    {
        //..
           
        //新增
        "scripts": {
           //-s参数表示生成sourcr map
          "build": "babel src -d lib -s"
        },
               
        "devDependencies": {
          "babel-cli": "^6.0.0"
        }
    }
    

    默认所有js文件都在src文件夹以及src的子文件夹下

  3. 创建.babelrc配置文件

    1. 安装env preset(根据环境自动配置的Babel Preset配置)

      npm install babel-preset-env --save-dev
      
    2. 定义.babelrc文件

      {
        "presets": ["env"]
      }
      

      其他转换规则:

      npm install –save-dev babel-preset-es2015 #es2015规则 npm install –save-dev babel-preset-react #react转换规则 ES7不同阶段规则 npm install –save-dev babel-preset-stage-1 npm install –save-dev babel-preset-stage-2 npm install –save-dev babel-preset-stage-3

      在prests中加入名称即可(比如安装了babel-preset-react就加个”react”)

  4. 试试编译

    npm run build
    

    这样就将./src的文件重新编译在./lib下,成功

babel-register

babel-register模块改写require命令,就不需要手动对require涉及的模块文件进行编译了

npm install --save-dev babel-register

babel-polyfill

babel只对语法进行编译转换,但不会对新的对象方法进行转换,比如Array新增的from方法。使用babel-polyfill对新的对象方法进行编译转换

npm install --save babel-polyfill
//在需要转换的js文件头部加上:
require('babel-polyfill');