求助关于gulp 插件使用问题

刚接触gulp遇到几个插件使用问题,查了半天没找到答案~555~
1.请问用gulp-load-plugins为什么不能调用pngquant插件,总提示pngquant is not function(plugins.imageminPngquant()也写过也不行),而单独require就行呢(var imagemin = require('gulp-imagemin');var pngquant = require('imagemin-pngquant');)
2.而且弱弱的问一下为什么gulp.src()这个前面有个return呢
3.pngquant这个插件设置了quality怎么没有用呢
代码:

gulp.task('minifyPng', function () {
return gulp.src('images/*.png')
.pipe(imagemin({
quality: 50,
progressive: true,
use: [pngquant()] //使用pngquant来压缩png图片
}))
.pipe(gulp.dest('build'));
});
阅读 2.9k
2 个回答
新手上路,请多包涵

gulp-load-plugins这个插件遵循的规则是

var pattern = arrayify(options.pattern || ['gulp-*', 'gulp.*', '@*/gulp{-,.}*']);
  var config = options.config || findup('package.json', { cwd: parentDir });
  var scope = arrayify(options.scope || ['dependencies', 'devDependencies', 'peerDependencies']);
  var replaceString = options.replaceString || /^gulp(-|\.)/;

这样看的话,好像不是以gulp开头的插件,它不会给转换,所以plugins.imageminPngquant()是无效的

.而且弱弱的问一下为什么gulp.src()这个前面有个return呢

第一个问题有人答了 我来答第二个
这个问题 跟gulp没多大关系
是函数的问题吧
在一个函数体中 return的意思就是返回函数执行的结果
return 是javascript里函数返回值的关键字,
一个函数内处理的结果可以使用return 返回,
这样在调用函数的地方就可以用变量接收返回
结果。return 关键字内任何类型的变量数据或表达式
都可以进行返回,甚至什么都不返回

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进