Как указать порядок файлов с помощью Grunt?
Я только начал использовать Grunt, и я пытаюсь получить concat задача конкатенировать мои файлы в определенном порядке. Вот что у меня есть:
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
concat: {
options: {
separator: ';'
},
dist: {
src: ['www/js/*.js','www/js/main.js','!**/*.{min,pack}.js','!<%= concat.dist.dest %>','!<%= uglify.dist %>'],
dest: 'www/js/<%= pkg.name %>.js'
}
},
Я надеялся, что, поместив www/js/main.js
во-вторых, он переместит файл вниз в конец списка, но это, похоже, не так.
Как я могу наложить некоторый порядок в списке файлов, которые он соответствует?
Ответы
Ответ 1
Ваша проблема в том, что main.js
соответствует первому шаблону, поэтому второй шаблон становится излишним. Это может показаться хакерским способом сделать это, но в основном вы должны исключить его из первого шаблона до, который вы включите его во второй; так:
concat: {
options: {
separator: ';'
},
dist: {
src: ['www/js/*.js', '!www/js/main.js', 'www/js/main.js','!**/*.{min,pack}.js','!<%= concat.dist.dest %>','!<%= uglify.dist %>'],
dest: 'www/js/<%= pkg.name %>.js'
}
}
Обратите внимание, что при использовании порядка шаблонов снимок важно.
Ответ 2
Я только что нашел https://github.com/miensol/grunt-concat-in-order.
С этим вы можете создать основной файл js, где вы укажете порядок ваших других файлов javascript с несколькими выражениями @depend.