Async等待+ Gulp - GulpUglifyError:无法缩小JavaScript?
问题描述:
这是我gulpfile部分:Async等待+ Gulp - GulpUglifyError:无法缩小JavaScript?
gulp.task('compile-js', function() {
// app.js is your main JS file with all your module inclusions
return browserify({
extensions: ['.js', '.jsx'],
entries: 'javascripts/app.js',
debug: true
})
.transform('babelify', { presets: ['es2015', 'react'] })
.bundle()
.pipe(source('bundle.min.js'))
.pipe(buffer())
.pipe(sourcemaps.init())
.pipe(uglify())
.pipe(sourcemaps.write('./maps'))
.pipe(gulp.dest('dist'))
.pipe(livereload())
})
在
我javascripts/app.js
:
我有,对于一个例子:
async function write() {
var txt = await read();
console.log(txt);
}
我得到这个错误:
GulpUglifyError: unable to minify JavaScript
这是我的package.json的一部分:
"dependencies": {
"animate.css": "^3.5.2",
"aos": "^2.2.0",
"autosize": "^4.0.0",
"axios": "^0.16.2",
"es6-docready": "^1.0.0",
"foundation-icon-fonts": "^0.1.1",
"foundation-sites": "^6.4.3",
"gulp-clean-css": "^3.9.0",
"gulp-cssimport": "^5.1.1",
"jquery": "^3.1.1",
"jquery-ui-bundle": "^1.12.1",
"material-design-icons": "^3.0.1",
"swiper": "^3.4.2",
"vue": "^2.4.4"
},
"repository": {
"type": "git",
"url": "[git-url-of-your-project]"
},
"devDependencies": {
"babel-preset-es2015": "^6.16.0",
"babel-preset-react": "^6.16.0",
"babelify": "^7.3.0",
"browserify": "^14.3.0",
"browserify-shim": "^3.8.12",
"gulp": "^3.9.1",
"gulp-clean-css": "^3.0.4",
"gulp-clone": "^1.0.0",
"gulp-concat": "^2.6.0",
"gulp-concat-css": "^2.3.0",
"gulp-cssimport": "^5.0.0",
"gulp-foreach": "^0.1.0",
"gulp-htmlmin": "^3.0.0",
"gulp-less": "^3.3.2",
"gulp-livereload": "^3.8.1",
"gulp-sourcemaps": "^1.6.0",
"gulp-uglify": "^2.1.2",
"streamqueue": "^1.1.1",
"vinyl-buffer": "^1.0.0",
"vinyl-source-stream": "^1.1.0"
},
还有什么我应该添加到我的吞咽过程的ES6?
编辑:
所以继巴贝尔doc为es2017:
我已经安装:
npm install --save-dev babel-preset-es2017
而且改变了我的gulpfile:
...
.transform('babelify', {
presets: ['es2015', 'es2017', 'react'],
我不在合作过程中不会出现任何错误mpilation,但我得到的浏览器控制台上的错误,当我在我的浏览器上运行我的代码:
Uncaught ReferenceError: regeneratorRuntime is not defined
答
也有类似的问题与一饮而尽,丑化,并且我发现了似乎涅槃异步/ AWAIT IS不支持基地gulp-uglify
,所以我切换到babel-minify,它为我工作。
编辑:对于regeneratorRuntime is not defined
错误,我认为regenerator-runtime可能会有所帮助。
+2
感谢您的答案。现在弄明白了:) – laukok
async/await是es2017。你需要相应的巴别克预设 – CodingIntrigue
@CodingIntrigue我得到一个新的错误,请参阅我上面的编辑。 – laukok
https://*.com/questions/33527653/babel-6-regeneratorruntime-is-not-defined – CodingIntrigue