grunt-wiredep的常见用法是浏览给定的超文本标记语言并将相关的依赖项注入到该超文本标记语言中。
相反,我希望获得JS和CSS依赖项,按照wiredep确定的顺序,将它们连接到单个JS和单个CSS文件中,并编写这些文件。
我可以看到wiredep本身很乐意返回具有有序列表的对象,但是让Grunt将这些内容写入文件的语法超出了我的能力范围。
有没有人知道这是不是可能的,语法是什么?所有grunt-wiredep任务开始的第一件事就是一个源HTML文件,而这不是我想要做的。
任何建议都很感谢!
发布于 2017-08-11 17:55:27
感谢您的解决方案!
我添加了一些额外的细节,所以它可以开箱即用:
//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');
});发布于 2016-02-04 17:19:55
所以,我最终和一位同事克服这个问题的方法非常简单。
我设置了一个新的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()允许您在配置块的之外设置任务的源代码。
https://stackoverflow.com/questions/35163926
复制相似问题