前情
个人的静态日志网页有些日子没更新了。这两天想分享些东西上来。结果因为之前在七牛上的图床不让免费使用了,所以博客的头像也挂了,很是不爽。然后就有了下面的折腾。
尝鲜
奔着尝鲜的念头更新了node,直接到10.13.0版本,在之后的编写更新过程中无意执行了npm audit fix --force
,结果把很多依赖给升级了,之后就悲剧了,本地可以执行hexo server
,使用travis自动发布时却总是在gulp处出错,本地也试了确实压缩出问题,然后就是一顿不服,一顿尝试。最终在如下网站中获取帮助得以解决,为帮助其他踩坑者特写此篇。
报错
1 | assert.js:85 |
1 | Uglifier complains with `Unexpected token: operator (>)` in 0.10.5 |
线索
1 | Should be... |
分析
- 起初错误是gulpfile.js格式与gulp4.0不兼容,4.0的主要变更可参考
- 不支持ES6出现的
Unexpected token: operator (>)
错误
问题解决
不兼容问题解决
修改gulpfile.js修改后
1 | var gulp = require('gulp'); |
主要将var uglify = require('gulp-uglify');
变为var uglify = require('gulp-terser');
默认任务的并行执行做了修改,由gulp.parallel
实现。 为了使用gulp-terser还需要修改package.json文件中的"gulp-uglify": "^3.0.1",
为"gulp-terser": "^1.1.5",