javascript - Gulp concat,uglify 处理 ES6 导出的库
问题描述
我使用Gulp来合并一些 javascript 以及丑化它们。当我尝试使用countUp(也可以是其他脚本)执行此操作时,我遇到了错误。
未捕获的 SyntaxError:意外的令牌“导出”
它尝试将 javascript 导出回脚本标记。现在我的 javascript 文件不仅仅是一个脚本,而是很多。
我怎样才能让它工作?有没有一种工具可以将其转换为通用 js,或者是否有更好的方法将它包含在 gulp 中?
脚本
我的 gulp 文件的一部分如下所示:
function script() {
return gulp
.src(js.src)
.pipe(concat(js.filename))
.pipe(gulp.dest(js.dest))
.pipe(uglify())
.pipe(rename({ extname: ".min.js" }))
.pipe(gulp.dest(js.dest));
}
解决方案
您可以使用 gulp 任务将 es6 模块转换为其他类型:
const babel = require('gulp-babel'),
gulp.task('es6-commonjs',['clean-temp'], function(){
return gulp.src(['app/*.js','app/**/*.js'])
.pipe(babel({ modules: 'common' }))
.pipe(gulp.dest('dest/temp'));
});
然后在你的 gulp 管道中使用这个任务。更多信息在这里。
推荐阅读
- c# - 如何以编程方式执行已安装的 clickonce 应用程序
- html - 在 DIV 容器内维护类中图像的比率
- python - 在 GUI 窗口中我无法获取文件路径
- sql - 一个查询中的不同级别的 SQL 分组
- php - 在 PHP 中使用可变数量的参数动态调用构造函数
- javascript - 单击链接时,选择 html 表的某些行并将所选行的一列的值发送到另一个 php 页面
- java - 使用美国运通/节点的 GraphQL 查询列表
- javascript - 使用 JavaScript 为 MS Outlook 生成长电子邮件正文
- r - R中两个矩阵(data.frames)列的余弦相似度
- mysql - 匹配 2 个具有特定条件的 SQL 表