背景
我刚使用grunt约30分钟。请给我一些时间。
但是我有一个非常简单的脚本,它将查看我的js,然后将其全部压缩成一个文件。
代码
"use strict";
module.exports = function (grunt) {
// load all grunt tasks
require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
options: {
beautify: true,
report: 'gzip'
},
build: {
src: ['docroot/js/*.js', 'docroot/components/pages/*.js', 'docroot/components/plugins/*.js'],
dest: 'docroot/js/main.min.js'
}
},
watch: {
options: {
dateFormat: function(time) {
grunt.log.writeln('The watch finished in ' + time + 'ms at' + (new Date()).toString());
grunt.log.writeln('Waiting for more changes...');
}
},
js: {
files: '<%= uglify.build.src %>',
tasks: ['uglify']
}
}
});
grunt.registerTask('default', 'watch');
}
问题
我的 main.min.js
每次都会被编译包含进去。这意味着我的 min.js 文件会被重复 2 倍、4 倍、8 倍、16 倍等等。最好的解决方法是添加一个例外并忽略 main.min.js
吗?
path/to/files/**/*js
。因此,src:['web/js/**/*.js','!web/js/bin/file1.js','!web/js/bin/file2.js']
不会忽略file1.js和file2.js。你是否遇到过这个问题?是因为我试图忽略子文件夹中的文件吗? - Fed