标签: grunt-contrib-imagemin

Grunt imagemin错误:无法读取未定义的属性"内容"

当我尝试运行它时,Grunt imagemin会抛出以下错误:

Running "imagemin:dynamic" (imagemin) task
Fatal error: Cannot read property 'contents' of undefined
Run Code Online (Sandbox Code Playgroud)

这是我的package.json文件:

{
  "name": "project1",
  "version": "0.1.0",
  "devDependencies": {
    "grunt": "~0.4.1",
    "grunt-contrib-imagemin": "^1.0.0",
    "grunt-contrib-uglify": "^0.11.0",
    "imagemin" : "4.0.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我的Gruntfile.js

module.exports = function(grunt) {

    grunt.initConfig({

        pkg: grunt.file.readJSON('package.json'),

        uglify: {
          build: {
            src: 'views/js/src/main.js',
            dest: 'views/js/build/main.js'
          }
        },

        imagemin: {
          dynamic: {
            files: [{
              expand: true,
              cwd: 'views/images/src/',
              src: ['**/*.{png,jpg,gif}'],
              dest: 'views/images/build/'
            }]
          }
        }

    });

    // 3. Where we tell Grunt we plan to use this …
Run Code Online (Sandbox Code Playgroud)

javascript gruntjs grunt-contrib-imagemin imagemin

9
推荐指数
3
解决办法
4021
查看次数

无法使用grunt imagemin优化文件夹内的图像

我正在尝试用grunt的imagemin模块优化图像.

我的目录结构以下列方式查找:

  • publicImg
    • 主要
    • 上载
      • 文件夹1
      • ...
      • folderN

每个文件夹1..N内都有文件.所有这些都是.jpg

我想要实现的是尝试优化所有这些并使用更新版本(具有相同名称)更改它们.我开始用一个更简单的任务来优化它们并复制到另一个文件夹(publicImages)保留相同的结构.

查看文档,我想出了以下JSON:

imagemin: {
    dynamic: {
        files: [{
            expand: true,
            cwd: 'publicImg/',
            src: ['*.jpg'],
            dest: 'publicImages/'
        }]
    }
}
Run Code Online (Sandbox Code Playgroud)

告诉我Minified 0 images (saved 0 B),我试图使用**/*jpg,**/*.{jpg}但仍然具有相同的效果.如何正确完成?

gruntjs grunt-contrib-imagemin

6
推荐指数
1
解决办法
1978
查看次数

如何从 grunt-contrib-imagemin 中排除目录

我的 Gruntfile.js 中有以下代码段:

    imagemin: {
        options: {
            optimizationLevel: 7,
            cache: false
        },

        dist: {
            files: [{
                expand: true,
                cwd: 'Assets/img/',
                src: ['**/*.{png,jpg,gif}', '!optimised/*.*'],
                dest: 'Assets/img/optimised/'
            }]
        }
    }
Run Code Online (Sandbox Code Playgroud)

当我运行grunt imagemin/optimised 中的文件时再次优化,确保排除我在“优化”文件夹中的任何文件的正确模式是什么?

我试过通配模式!这用于否定匹配但无法使其工作。

npm gruntjs grunt-contrib-imagemin

6
推荐指数
1
解决办法
3168
查看次数

新文件上的Grunt Imagemin

我正在使用Grunt Imagemin来优化图像文件夹.但是,每次运行该命令时,它都会在所有图像上运行imagemin.有没有办法在检测到新的更改时只运行grunt imagemin?

gruntjs grunt-contrib-imagemin

5
推荐指数
1
解决办法
1094
查看次数

imagemin:dist任务抛出错误

我现在一直试图解决这个问题超过半天.

我有一个angularjs项目,我使用grunt来构建.

运行我的grunt命令给我以下内容:

```Running"concurrent:dist"(并发)任务

Running "svgmin:dist" (svgmin) task
Total saved: 0 B

Done, without errors.


Execution Time (2014-09-23 21:53:55 UTC)
loading tasks   7ms  ?????? 11%
svgmin:dist    58ms  ?????????????????????????????????????????? 89%
Total 65ms
    Warning: Running "imagemin:dist" (imagemin) task
Fatal error: Object #<DestroyableTransform> has no method 'apply'


Execution Time (2014-09-23 21:53:55 UTC)
imagemin:dist  868ms  ??????????????????????????????????????????????? 99%
Total 876ms Use --force to continue.

    Aborted due to warnings.
Run Code Online (Sandbox Code Playgroud)

```

这是我的GruntFile.js中的imagemin任务:

imagemin: { dist: { files: [ { expand: true, cwd: '<%= yeoman.app %>/images', …

javascript angularjs gruntjs grunt-contrib-imagemin

5
推荐指数
1
解决办法
5032
查看次数

grunt imagemin错误:致命错误:写EPIPE

当我运行grunt dist时,我收到了上述错误,它与我的其他机器完美配合.请找我的gruntfile.

$ grunt imagemin.

运行"imagemin:png"(imagemin)任务缩小132张图像(已保存134.02 kB)

运行"imagemin:gif"(imagemin)任务

致命错误:写EPIPE

module.exports = function(grunt) {

grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),

    connect: {
        server: {
            options: {
                port: 9001,
                livereload: true,
                hostname: 'localhost',
                base: ['.']
            }
        }
    },

    watch: {
        options: {
            livereload: true
        },

        all: {            
                files: ['Content/**/*.scss'],
                tasks: 'sass'                                     
        }
    },

    open: {
        all: {
            path: 'http://localhost:9001/app/index.html'
        }
    },

    concat: {
        style: {
            src: [ 
            "Content/font-awesome/css/font-awesome.min.css",
            "Content/scss/all.scss",
            "Content/scss/_buttons.scss"],
            dest: 'Content/dist/scss/style.scss'
        },

        ie: {
            cwd: 'Content',
            expand: true,
            src: [
                "scss/ie9.scss",
                "scss/ie8.scss"
            ],
            dest: …
Run Code Online (Sandbox Code Playgroud)

build gruntjs grunt-contrib-imagemin imagemin

5
推荐指数
0
解决办法
1488
查看次数

Yeaoman Grunt imagemin致命错误:无法读取未定义的属性"内容"

grunt build即使使用干净的Yeoman角度构造,我也会继续跑步:yo angular whatever.

警告:运行"imagemin:dist"(imagemin)任务

致命错误:无法读取未定义的属性"内容"

gruntjs yeoman grunt-contrib-imagemin

5
推荐指数
2
解决办法
2143
查看次数

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

在尝试使用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

node.js gruntjs grunt-contrib-imagemin

4
推荐指数
1
解决办法
1208
查看次数

如何使用grunt-contrib-imagemin插件无损优化图像?

我正在尝试使用进行无损优化JPEG / PNG图像imagemin,但是使用扩展名时出现问题,它们会“反优化”,这意味着结果图像比原始图像大。我该如何预防?

这是我的Gruntfile.js

...
grunt.initConfig({
    imagemin: {
        jpeg: {
            options: {
                //by default it uses imageminJpegtran
                progressive: true,//default false, progressive JPEG is better compression https://superuser.com/questions/463477/progressive-jpeg-quality-compare-to-normal-jpeg
                arithmetic: false,//true breaks image

                //don't know how to use it loseless without making the images even bigger
                // use: [
                //  imageminMozjpeg({
                //      quality: 95, //Compression quality, in range 0 (worst) to 100 (perfect).
                //      dcScanOpt: 2,//2 Optimize between one scan for all components and one scan for 1st …
Run Code Online (Sandbox Code Playgroud)

javascript gruntjs grunt-contrib-imagemin imagemin

4
推荐指数
1
解决办法
601
查看次数

错误:使用grunt-contrib-imagemin时为png文件生成ENOENT

我试图grunt-contrib-imagemin ~0.9.4node.js应用程序中压缩图像.我的配置是:

    imagemin: {
        dynamic: {
            files: [{
                expand: true,
                cwd: 'server/static/img/',
                src: ['**/*.{jpg,gif,png}'],
                dest: '_public/incl/img/'
            }]
        }
    },
Run Code Online (Sandbox Code Playgroud)

我系统地得到一条Error: spawn ENOENT in file somepath/someimage.png消息.它在第一个处理过的.png文件中失败.当我不包含.png文件时,一切正常.

我已经读过某个地方,我应该首先在目标目录中复制图像文件作为解决方法.我试过这个,但它没有解决问题.

我在Windows 7 32位上,我正在使用grunt ~0.4.5.我该如何解决这个问题?

javascript node.js gruntjs grunt-contrib-imagemin

3
推荐指数
1
解决办法
4058
查看次数

由于imagemin问题导致Grunt构建失败,出了什么问题?

我正在尝试使用构建应用程序grunt build,我收到此错误:

# grunt build
Running "clean:dist" (clean) task

Running "wiredep:app" (wiredep) task

Running "wiredep:sass" (wiredep) task

Running "includeSource:dist" (includeSource) task
File "dist/index.html" created.

Running "useminPrepare:html" (useminPrepare) task
Configuration changed for concat, uglify, cssmin

Running "concurrent:dist" (concurrent) task
>> Warning: There are more tasks than your concurrency limit. After this limit
>> is reached no further tasks will be run until the current tasks are
>> completed. You can adjust the limit in the concurrent task options
    Warning: …
Run Code Online (Sandbox Code Playgroud)

node.js npm gruntjs grunt-contrib-imagemin imagemin

3
推荐指数
2
解决办法
6337
查看次数

Grunt Imagemin没有优化图像

我的图片没有得到优化.也许我在我的结局上做错了,但除了我的imagemin任务之外,其他任务都在为我工作.我删除了所有其他任务并尝试在下面运行我的任务但它没有执行.

我的终端中也没有消息表明问题所在.我正在运行此命令

grunt imagemin

但没有任何反应.图像.jpg格式正确,位于我的img文件夹中.我想要做的是优化/压缩这些图像到我的文件夹中的图像文件dist夹.

我也在加载所有已注册的节点 require('load-grunt-tasks')(grunt);

如果有人可以帮助我,那会很好.

这是我的文件夹结构

Main Folder
| -- dist 
        |--- css
        |--- js
|-- img -- (images are here)
|-- js
|-- node_modules
|-- reports
|-- sass
|-- test 
|-- coverage
|-- _resources
|-- _bin
Run Code Online (Sandbox Code Playgroud)

这是我的gruntfile.js

module.exports = function(grunt) {

  // A very basic default task.
  // grunt.registerTask('running', 'Log some stuff.', function() {
  //   grunt.log.write('Logging some stuff...').ok();
  // });

  require('load-grunt-tasks')(grunt); // using this to load all tasks

  grunt.initConfig({ 

      // …
Run Code Online (Sandbox Code Playgroud)

node.js gruntjs grunt-contrib-imagemin

2
推荐指数
1
解决办法
539
查看次数