gulp 编译es6 探究

Posted jake-前端工程师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gulp 编译es6 探究相关的知识,希望对你有一定的参考价值。

1.gulp配置:

var gulp = require(‘gulp‘)
var fs = require("fs")
var babelify = require(‘babelify‘)
var browserify = require(‘browserify‘)
var rename=require(‘gulp-rename‘)
var uglifyjs = require(‘gulp-uglifyjs‘)

gulp.task(‘es2015‘, () => {
	browserify("./src/main.js")
		.transform(["babelify", {
			babelrc: false,
			presets: [‘es2015‘, ‘es2016‘, ‘es2017‘, ‘stage-0‘],
			plugins: [‘transform-decorators-legacy‘]
		}])
		.bundle()
		.pipe(fs.createWriteStream("bundle.js"));
})
gulp.task(‘uglifyjs‘,()=>{
	gulp.src(‘./bundle.js‘)
		.pipe(uglifyjs())
		.pipe(rename(‘bundle.min.js‘))
		.pipe(gulp.dest(‘./dist‘))
})
gulp.task(‘default‘, () => {
	gulp.watch(‘./src/**/*.js‘, () => {
		gulp.run(‘es2015‘)
	})
})

     这里编译es6的要点工具是babel和browserify,browserify是一个打包module模块的工具,能够将import之类的module打包进来到文件中。另外browserify还配置了babel模块来编译es6,这样就可以高度实现对es6的编译和打包。

 

以上是关于gulp 编译es6 探究的主要内容,如果未能解决你的问题,请参考以下文章

gulp 编译es6 react 教程 案例 配置

gulp-babel编译es6后的require怎么处理

gulp打包js多个文件夹并压缩混淆,编译ES6语法

使用babel编译es6

gulp-babel 取消严格模式方法

gulp自动化方案