javascript – Traceur浏览器在gulp中丑化

我想要一个gulpfile,首先将我的es6代码转换为es5并将其保存到一个目录,然后浏览它(在每个文件上,而不仅仅是一个条目文件)并将其保存到另一个目录,最后我想缩小它并放入它在浏览器文件夹中为.min.js文件.这是结果应该是什么样的图表:

src/
  es6/
    index.js
    mod.js
  es5/
    index.js
    mod.js
  es5-browser/
    index.js
    index.min.js
    mod.js
    mod.min.js

这是我的gulp文件到目前为止,但我一直找不到模块错误

var gulp = require('gulp');
var traceur = require('gulp-traceur');
var browserify = require('gulp-browserify');
var sourcemaps = require('gulp-sourcemaps');

gulp.task('es5ize',function () {
  return gulp.src('src/es6/**/*.js')
    .pipe(sourcemaps.init())
    .pipe(traceur({sourceMaps: true}))
    .pipe(sourcemaps.write())
    .pipe(gulp.dest('src/es5'))
    .pipe(browserify({
      debug : true
    }))
    .pipe(gulp.dest('src/es5-browser'))
    ;
});

我知道我不应该使用gulp-browserify,但我也无法得到这样的东西来使用乙烯基.

它一直运行到浏览器步骤

我怎样才能让它发挥作用?

编辑:

我希望能够保持这一点而不必执行任何操作,因为我最终也想在这上面使用watchify

接近第一个的所有其他示例都有browserify创建一个bundle然后操作该bundle,但这意味着它总是会启动我不想要的浏览器.他们似乎也需要为browserify指定一个入口文件,但是我想指定一个glob并让它转换为匹配的everthing

解决方法

你需要traceur编译为commonjs模块,以便browserify理解.pipe(traceur({modules:’commonjs’}))

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...