Search code examples
gruntjstask-runner-explorer

grunt: how to detect if file is saved to uglify all of my js files


I am trying to detect if some js is saved to uglify my js files or my css files.

I am having this code in GruntFile.js:

/// <binding ProjectOpened='uglify' />
module.exports = function (grunt) {
    grunt.initConfig({

        uglify: {
            bundle: {
                files: { 'Scripts/boooo.min.js': 'Scripts/bootstrap.js' }
            }
        },
        watch: {
            js: {
                files: ['Scripts/**/*.js'],
                tasks: ['uglify']
            }
        }
    });

    // Next one would load plugins
    grunt.loadNpmTasks('grunt-contrib-uglify');
    grunt.loadNpmTasks('grunt-contrib-watch');


    // Here is where we would define our task
    grunt.registerTask('default', ['watch:js']);


};  

My Task Runner Explorer is:

enter image description here

My package json is:

{
  "name": "something",
  "version": "1.0.0",
  "description": "test",
  "main": "index.html",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "grunt": "^0.4.5",
    "grunt-bower-task": "^0.4.0",
    "grunt-contrib-copy": "^0.8.0",
    "grunt-contrib-uglify": "^0.9.1",
    "grunt-contrib-watch": "^0.6.1",
    "install": "^0.1.8",
    "jshint-stylish": "^2.0.1",
    "npm": "^2.13.4"
  }
}

How can I detect if it is saved?


Solution

  • module.exports = function (grunt) {
        grunt.initConfig({
            pkg: grunt.file.readJSON('package.json'),
            watch: {
                scripts: {
                    files: ['scripts/**/*.js'],
                    tasks: ['uglify']
                }
            },
            uglify: {
                my_target: {
                    options: {
                        beautify: false
                    },
                    files: {
                        '/Scripts/app.min.js': ['scripts/**/*.js']
                    }
                }
            }
        });
    
        grunt.loadNpmTasks('grunt-contrib-watch');
        grunt.loadNpmTasks('grunt-contrib-uglify');
    
        grunt.registerTask('default', ['uglify:my_target', 'watch']);
    };