Babel核心用法记要
来源:互联网 发布:气步枪瞄准器 知乎 编辑:程序博客网 时间:2024/05/18 00:55
Babel一句话介绍
一个js编译器,把浏览器不支持的js转译成浏览器支持的js
安装Babel
不建议把Babel安装到全局,建议安装到项目的devDependencies里
npm i -D babel-cli
.babelrc文件
建议用.babelrc
来配置babel
{ "presets": [], "plugins": []}
一般会用到的两个套件react
,es2015
安装babel-preset-es2015
和babel-preset-react
npm i -D babel-preset-es2015 babel-preset-react
配置.babelrc
文件
{ "presets": [ "es2015", "react" ], "plugins": []}
CLI用法
配置.babelrc
文件
{ "presets": [ // 需要用到的套件 ], "plugins": [ // 需要用到的插件 ]}
转译文件到文件
babel example.js -o compiled.js
转译目录到目录
babel src -d dist
监听文件变化
babel -w src -d dist
Webpack用法
安装
babel-loader
npm i -D babel-loader babel-core
配置
loader
module: { loaders: [{ test: /\.js$/, exclude: /node_modules/, loader: "babel-loader" }] }
配置
.babelrc
文件{ "presets": [ // 需要用到的套件 ], "plugins": [ // 需要用到的插件 ] }
注意:要配置好
.babelrc
文件
Gulp用法
安装
gulp-babel
npm i -D gulp-babel
定义
task
var gulp = require("gulp"); var babel = require("gulp-babel"); gulp.task("default", function () { return gulp.src("src/app.js") .pipe(babel()) .pipe(gulp.dest("dist")); });
配置
.babelrc
文件{ "presets": [ // 需要用到的套件 ], "plugins": [ // 需要用到的插件 ] }
Babel套件与插件
babel-preset-es2015
适用于ES6的套件
npm i -D babel-preset-es2015
.babelrc
{ "presets": ["es2015"]}
babel-preset-react
适用于React的套件
npm install --save-dev babel-preset-react
.babelrc
{ "presets": ["react"]}
object-assign
适用于Object.assign()
举例
var obj = { a: 1 };var copy = Object.assign({}, obj);console.log(copy); // { a: 1 }
安装
npm install babel-plugin-transform-object-assign
.babelrc
{ "plugins": ["transform-object-assign"]}
object-rest-spread
适用于展开运算符
举例
var arr1 = [0, 1, 2];var arr2 = [3, 4, 5];arr1.push(...arr2);
安装
npm install babel-plugin-transform-object-rest-spread
.babelrc
{ "plugins": ["transform-object-rest-spread"]}
阅读全文
0 0
- Babel核心用法记要
- Babel 用法
- babel 用法
- babel+browserify用法总结
- 记要
- babel
- babel
- babel
- babel
- babel es6转码的基本用法
- CSS记要
- 开通记要
- CSS记要
- 面试记要
- struts2记要
- babel && babel-preset-env
- Git核心用法
- gulp-babel
- 文件读取权限
- 一根反斜杠“\”引发的事件
- 分治算法求两数组中位数
- 实时监控php-fpm状态
- 初入帝都 17.07.29
- Babel核心用法记要
- 解决QQ群、讨论组上传文件,由于网络原因上传失败?
- Gradle 完整指南
- first blog
- CentOS 7 安装 MariaDB 10.1
- 游戏通讯方式
- ios多线程开发的常用三种方式
- js将json字符创转换为json对象
- 406