package.json
{
"devDependencies": {
"@babel/core": "^7.12.3",
"babel-core": "^6.26.3",
"babel-preset-env": "^1.7.0",
"babel-preset-stage-2": "^6.24.1",
"babel-preset-stage-3": "^6.24.1",
"gulp": "3",
"gulp-babel": "7"
}
}
创建.babelrc文件
cmd:type >.babelrc
{
"presets": [
"env","stage-2","stage-3"
]
}
Babel默认只转换新的JavaScript句法(syntax),而不转换新的API,比如Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise等全局对象,以及一些定义在全局对象上的方法(比如Object.assign
)都不会转码。
手动引入polyfill.js文件
https://github.com/hoyche/polyfill
gulpfile.js
var gulp = require("gulp");
var babel = require("gulp-babel");
gulp.task('change',function(){
gulp.watch("dev/**/*.js", f => {
gulp.src(f.path)
.pipe(babel())
.pipe(gulp.dest('pub'));
console.log('complate');
});
});
gulp.task("default",['change']);