Я пытаюсь скомпилировать свой код ES6 + в vanilla js с помощью Grunt Task Runner. Я намеренно выбрал Grunt вместо webpack и gulp, потому что я просто хотел минимизировать свои js файлы.
Я успешно скомпилировал свой код ES6 в ваниль после того, как при запуске кода возникла ошибка, говорящая, что generatorRuntime не определена. Проанализировав проблему, я понял, что мой код asyn c и await вызывает проблему после преобразования в vanilla js.
У меня есть фрагмент кода моего gruntfile. js и package. json.
babel: {
options: {
sourceMap: true
},
dist: {
files: [{
"expand": true,
"cwd": "./htdocs/js/src",
"src": ["**/*.js"],
"dest": "./htdocs/js/compiled/",
"ext": ".js"
}]
}
},
//uglify will minify all the js files in js/src folder.
uglify: {
all_src : {
options : {
sourceMap : true
},
files: [{
expand: true,
flatten: true,
cwd:'./htdocs/js/compiled',
src: '**/*.js',
dest: './htdocs/js/dist',
ext: '.min.js'
}]
}
}
grunt.loadNpmTasks('grunt-babel');
grunt.loadNpmTasks('grunt-contrib-uglify');
Пакет. json
"devDependencies": {
"babel-core": "^6.26.3",
"babel-preset-latest": "^6.24.1",
"grunt": "^1.1.0",
"grunt-babel": "^7.0.0",
"grunt-cli": "^1.3.2",
"grunt-contrib-uglify": "^4.0.1"
},
"babel": {
"presets": [
"latest"
]
}