grunt-wiredep - хочет получить зависимости, записанные в файл

Обычно grunt-wiredep используется для сканирования вашего заданного HTML-кода и введения соответствующих зависимостей в этот HTML -код.

Вместо этого я собираюсь получить зависимости JS и CSS в порядке, определенном wiredep, объединить их в один файл JS и один CSS и записать эти файлы.

Я вижу, что сам Wiredep с радостью возвращает объект с упорядоченным списком, но синтаксис для получения Grunt для записи их в файлы мне не подходит.

Кто-нибудь знает, возможно ли это и какой будет синтаксис? Первое, с чего начинаются все задачи grunt-wiredep, это исходный HTML-файл, и это не то, что я хочу делать.

Любой совет приветствуется!

2 ответа

Спасибо за ваше решение!

Я добавил некоторые дополнительные детали, так что это работает из коробки:

//Put all bower files in one file
grunt.registerTask('bower-bundler', function() {

    //Point to the file which source you need to bundle
    var result = require('wiredep')({
        src: ['index.html']
    });

    //Set grunt config for concat task based on result.js and add an output file
    grunt.config.set('concat.withWiredepJS', {
        src: [
            result.js
        ],
        dest: 'build/lib_min.js'
    });

    //Run the task right away
    grunt.task.run('concat:withWiredepJS');
});

Таким образом, способ, которым я наконец преодолел это с коллегой, удивительно прост.

Я установил новую задачу Grunt, чтобы получить нужный мне объект из процесса Wiredep узла, как здесь:

    grunt.registerTask('bower-bundler', function () {
      var result = require('wiredep')();
      grunt.config.set('concat.wiredepCSS.src', result.css);
      grunt.config.set('concat.wiredepJS.src', result.js);
    });

grunt.config.set() позволяет вам установить источник задачи за пределами его блока конфигурации.

Другие вопросы по тегам