1

查看诸如此类的表格:http: //kangax.github.io/compat-table/es6/

看起来 Chrome 真的很接近支持很多 ES6,这意味着(在我看来)我应该能够在开发过程中放弃以下内容:

var babelifyOptions = {
    presets: ['es2015', 'stage-0', 'react'],
    extensions: ['.js', '.jsx']
};

使用 browserify 时:

browserify(browserifyOptions)
    .transform(babelify.configure(babelifyOptions))
    .bundle()
    .pipe(source('app.js'))
    .pipe(buffer())
    .pipe(gulp.dest('./dist/js'));

并有望加快构建时间。在构建生产时,显然仍然需要转译。

但是,当我退出 es2015 预设时,browserify 会阻塞构建,不理解.... 这是有道理的,但是是否可以在仅针对 Chrome 时运行 browserify?(即允许 Chrome 当前理解的令牌/运算符/功能)。

4

1 回答 1

1

我不认为browserify是问题,但你的 NodeJS 版本是。我认为 NodeJS 6 是第一个默认支持很多 ES2015 功能的版本,但值得注意的是它不支持新的 ES 模块系统。有一些 Babel 预设可以修补缺少的东西。这只是我在快速搜索中找到的列表:

注意:我没有使用过其中任何一个,所以我无法为您推荐。

于 2016-10-30T11:55:23.810 回答