Gruntjs grunt wiredep-要将依赖项写入文件吗

Gruntjs grunt wiredep-要将依赖项写入文件吗,gruntjs,wiredep,grunt-wiredep,Gruntjs,Wiredep,Grunt Wiredep,的常见用法是扫描给定的HTML并将相关依赖项注入该HTML 相反,我希望按照wiredep确定的顺序获取JS和CSS依赖项,将它们合并到单个JS和单个CSS文件中,并编写这些文件 我可以看出wiredep本身很乐意返回一个带有有序列表的对象,但是让Grunt将这些内容写入文件的语法我不懂 有人知道这是否可能,语法是什么吗?所有grunt wiredep任务开始的第一件事是源HTML文件,这不是我想要做的 任何建议,谢谢 因此,我最终与一位同事克服这一问题的方法非常简单 我设置了一个新的Grunt

的常见用法是扫描给定的HTML并将相关依赖项注入该HTML

相反,我希望按照wiredep确定的顺序获取JS和CSS依赖项,将它们合并到单个JS和单个CSS文件中,并编写这些文件

我可以看出wiredep本身很乐意返回一个带有有序列表的对象,但是让Grunt将这些内容写入文件的语法我不懂

有人知道这是否可能,语法是什么吗?所有grunt wiredep任务开始的第一件事是源HTML文件,这不是我想要做的


任何建议,谢谢

因此,我最终与一位同事克服这一问题的方法非常简单

我设置了一个新的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()
允许您将任务的源设置在其配置块的外部。

感谢您的解决方案

我添加了一些额外的细节,因此它是开箱即用的:

//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');
});