我正在尝试自学Grunt.js的基础知识,我发现它只是直觉。
我已经有了它的工作 - 我能够观看目录,minifiy JS并编译我的指南针/ sass文件。
我现在遇到的问题是使用https://npmjs.org/package/grunt-contrib-imagemin
缩小图像运行$ grunt时,我一直收到以下错误:
No "imagemin" targets found
我这里有我的gruntfile:https://github.com/Tjobbe/sample-grunt-project/blob/master/gruntfile.js和我的git repo:https://github.com/Tjobbe/sample-grunt-project所以你可以看到我的目录设置。
知道为什么这不起作用?理想情况下,我希望它不断轮询目录以查看是否有任何新文件,然后缩小它们并将它们放入src / img /目录。
答案 0 :(得分:2)
您的imagemin
是watch
任务的子任务。如果你把它拿出来,那就行了。
这是Gruntfile.js
的一部分 watch: {
compass: {
files: ['dev/sass/*.sass'],
tasks: ['compass:dev']
},
js: {
files: ['dev/js/*.js'],
tasks: ['uglify']
}
},
compass: {
dev: {
options: {
sassDir: ['dev/sass/'],
cssDir: ['src/css/'],
environment: 'development'
}
},
prod: {
options: {
sassDir: ['dev/sass/'],
cssDir: ['src/css/'],
environment: 'production'
}
},
},
imagemin: {
dynamic: {
files: [{
expand: true,
cwd: 'dev/img/',
src: ['dev/img/*.{png,jpg,gif}'],
dest: 'src/img/'
}]
}
},
uglify: {
all: {
files: {
'src/js/min.js': [
'dev/js/*.js']
// 'js/*.js']
}
},
},
});
答案 1 :(得分:0)
imagemin是手表的子任务。在此,您需要像watch:imagemin
与使用指南针的方式相同:dev