环境:
- windows 7
- 节点6.9.5
我使用插件像this npm .但我得到一个错误.从一些视频,它是正确的.它是相对于imagemin的版本?
// gulpfile.js
var gulp = require('gulp');
var imagemin = require('gulp-imagemin');
var app = {
srcPath: 'src/',
devPath: 'build/',
prdPath: 'dist/', //生产部署
}
gulp.task('image', function() {
gulp.src(app.srcPath + 'image/**/*')
.pipe(gulp.dest(app.devPath + 'image'))
.pipe(imagemin())
.pipe(gulp.dest(app.prdPath + 'image'))
})
当我“狼吞虎咽”时,得到一个错误:
[13:05:56] Using gulpfile ~\Desktop\study\angularapp\gulpfile.js
[13:05:56] Starting 'image'...
[13:05:56] Finished 'image' after 6.96 ms
[13:05:56] gulp-imagemin: Couldn't load default plugin "gifsicle"
[13:05:56] gulp-imagemin: Couldn't load default plugin "jpegtran"
[13:05:56] gulp-imagemin: Couldn't load default plugin "optipng"
[13:05:56] gulp-imagemin: Minified 1 image (saved 0 B - 0%)
我使用npm install imagemin-optipng
,但它仍然不工作。依赖关系如下:
"devDependencies": {
"clean-css": "^4.0.5",
"gulp": "^3.9.1",
"gulp-clean": "^0.3.2",
"gulp-concat": "^2.6.1",
"gulp-connect": "^5.0.0",
"gulp-cssmin": "^0.1.7",
"gulp-imagemin": "^3.1.1",
"gulp-less": "^3.3.0",
"gulp-load-plugins": "^1.5.0",
"gulp-uglify": "^2.0.1",
"lodash": "^4.17.4",
"open": "^0.0.5"
}
它怎么了?
2条答案
按热度按时间kdfy810k1#
我有同样的问题,我发现这是因为默认插件没有正确安装。
此警告由代码#L12这些行引发
如果在catch中记录错误,我们可以看到
Module not found xxx
。这样我们就可以安装丢失的软件包。
如果也有一些错误,就重新安装
imagemin
dgiusagp2#
看起来这是
node
6的问题。请尝试降级您用于此项目的版本。我在6.9.5上收到gifsicle安装错误,但在6.3.1上没有(尚未尝试中间的所有版本)。如果您不熟悉节点版本之间的切换,建议的解决方案是使用
nvm
。通读www.example.com中的说明https://github.com/creationix/nvm#installation(并非所有操作系统都受支持),然后运行
nvm
文档很详尽,但基本上您将运行nvm install YOURVERSIONNUMBER
,然后运行nvm use YOURVERSIONNUMBER
。(还值得查看一下:如何使用.nvmrc
,以及如何自动加载项目节点版本。)