Matt
Matt

Reputation: 124

I'm stuck configuring Gruntfile.js to transpile multiple JS files into one

I've replaced uglify with babel (and concat), so I'm concat'ing multiple ES6 files into one distribution JS file. I'd LIKE to concat into the dist folder, and have babel transpile and overwrite the file but doing that, babel is unable to use the dist FOLDER, warning: Couldn't find preset “env” relative to directory

What am I doing wrong?

my Gruntfile.js:

module.exports = function(grunt) {
    grunt.initConfig({
      pkg: grunt.file.readJSON('package.json'),
      concat: {
        options: {
          /*sourceMap: true,
          sourceMapStyle: "link"*/
        },
        dist: {
          src: [
            "js/file1.js",
            "js/file2.js",
            "js/file3.js",
            "js/file4.js",
            "js/file5.js"
          ],
          dest: "js/script.concat.js"
        }
      },
      babel: {
        options: {
          presets: ["env"],
          /*sourceMap: true,*/
          minified: true
        },
        dist: {
          files: [{"../dist/js/script.min.js" : "js/script.concat.js"}]
        }
      },
      watch: {
        js: {
            files: ["js/file1.js", "js/file2.js", "js/file3.js", "js/file4.js", "js/file5.js"],
          tasks: ["concat:dist", "babel:dist"]
        }
      }
    });
    grunt.loadNpmTasks('grunt-contrib-concat');
    grunt.loadNpmTasks('grunt-babel');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.registerTask('default', ['watch']);
    grunt.registerTask('build', ['concat:dist', 'babel:dist']);
};

Upvotes: 0

Views: 262

Answers (0)

Related Questions