変更されたばかりのファイルのみを醜くする Gruntfile.js をセットアップしようとしています。私はで与えられた質問と回答からこれのいくつかを適応させました
Uglifyの動的拡張が有効になっている場合、Grunt.jsウォッチタスクで変更されたファイルのみを醜くする方法は?
私がこれを理解しているように、監視イベントでイベントをトリガーする必要があります。これにより、uglify タスクsrc
が現在のファイル パスに変更されます。ただし、GruntJS は、変更されたばかりのファイルだけでなく、すべてのファイルを醜くします。
ここで GruntJS が機能する方法を単に誤解しただけなのかどうかはわかりませんが、どこが間違っているのか誰か教えてもらえますか?
var productionPath = "production", devPath = "dev";
module.exports = function(grunt) {
require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
build: {
expand: true,
cwd: devPath + '/js/',
src: ['**/*.js'],
dest: productionPath + '/js/',
ext: '.min.js'
}
},
watch: {
options: { spawn: false },
scripts: {
files: [devPath + '/**/*.js'],
tasks: ['uglify']
}
}
});
grunt.registerTask('default', ['uglify', 'watch']);
grunt.event.on('watch', function(action, filepath, target) {
grunt.config('uglify.build.src', filepath);
});
};