grunt-contrig-imagemin警告:无法调用undefined方法'replace'

use*_*986 4 node.js gruntjs grunt-contrib-imagemin

在尝试使用imagemin时,我收到了一个奇怪的警告,没有任何反应.

grunt imagemin:primary

Warning: Cannot call method 'replace' of undefined Used --force, continuing.
Done, but with warnings.
Run Code Online (Sandbox Code Playgroud)

我给错误的任务如下

  grunt.config 'imagemin'

    primary:
      options:
        optimizationLevel: 7
      expand: true
      cwd: "assets"
      src: "{img,img_two}/**/*.{jpg,jpeg,gif,png}"
      dest: "public/compiled/img"


  grunt.loadNpmTasks 'grunt-contrib-imagemin'
Run Code Online (Sandbox Code Playgroud)

这些都行不通

src: "img/**/*.{jpg,jpeg,gif,png}"

src: "{img,img_two}/**/*.{jpg,jpeg,gif,png}"

这些工作

src: "img/**/*.jpg"

src: "{img,img_two}/**/*.jpg"

所以它似乎不喜欢多个扩展语法,但为什么,它甚至是如何在示例中完成的?

更新:似乎只是PNG不起作用,无论我是自己进行扩展还是在组匹配中.我在Windows 8,NPM 1.4.3上

https://github.com/gruntjs/grunt-contrib-imagemin/issues/219

Fla*_*dan 11

有同样的问题我通过删除node_modules内的grunt-contrib-imagemin目录来修复它

然后我运行"npm install grunt-contrib-imagemin"来获取最新版本.