Javascript 如何使用grunt.js缩小整个文件夹内容
不要单独提及每个Javascript 如何使用grunt.js缩小整个文件夹内容,javascript,client-server,gruntjs,Javascript,Client Server,Gruntjs,不要单独提及每个js, 这是缩小和压缩整个js文件夹的方法吗 module.exports = function(grunt) { grunt.initConfig({ min: { dist: { src: ['scripts/*.js'], dest: 'dist/built.min.js' } } }); }; 是的,如果您只想将scripts目录中的所有.js文件连接并缩小一级,则这是正确的 例如,如果scripts/包含a.js和b
js
,
这是缩小和压缩整个js文件夹的方法吗
module.exports = function(grunt) {
grunt.initConfig({
min: {
dist: {
src: ['scripts/*.js'],
dest: 'dist/built.min.js'
}
}
});
};
是的,如果您只想将
scripts
目录中的所有.js
文件连接并缩小一级,则这是正确的
例如,如果scripts/
包含a.js
和b.js
以及foo/
目录,您将得到a.js
+b.js
的串联和缩小结果,但foo/
目录中没有任何内容
如果您还想获取foo/
目录(以及所有其他嵌套目录)中的所有内容,该怎么办?将表达式从['scripts/*.js']
更改为['scripts/***.js']
——或任何最小匹配表达式:
由于gruntmin
任务使用expandFiles
函数,因此您可以使用任何minimatch表达式:
在这个任务中使用minimatch表达式的缺点是很难理解文件的连接顺序,这通常非常重要。如果这很重要,要小心
另外,请注意,grunt的新版本(
0.4
)很快就会面世。这将使此答案过时,因为min
任务已在0.4
中更改(但仍支持minimatch表达式)。如果您的文件夹仅包含js文件,则正确,但如果您的文件夹包含嵌套文件夹,例如,foo
是我们的主js文件夹,其中有另一个嵌套文件夹loo
,其中还有一些js文件,例如:
foo:
mu.js
su.js
loo:
ku.js
wu.js
在这种情况下,您必须以以下方式修改代码:
module.exports = function(grunt) {
grunt.initConfig({
min: {
dist: {
src: 'foo/**/*.js',
dest: 'dist/foo.min.js'
}
}
});
};
通过这样做,您可以最小化foo
文件夹中的所有js文件,甚至嵌套文件夹文件。我建议在最小化之前使用cocat js文件。可能重复的