0

我需要使用 grunt 编写一个高级的 concat 脚本。这是我的样板:

___js
|____dist
| |____vents
| | |____commonEvents.js
| | |____compare.js
|____libs
|____src
| |____events
| | |____carousel.common.js
| | |____compare.js
| | |____styles.common.js
| |____handlers
| | |____carousel.common.js
| | |____compare.js
| | |____style.common.js

我希望 concat 任务查看“src/events”和“src/handlers”目录并找到所有以“.common.js”结尾的文件并将它们连接在一起并将它们放在“dist/vents”目录中(“ commonEvents.js”),其他不以“.common.js”结尾的文件我希望脚本在另一个目录中找到该对并将它们连接在一起并将它们放入“dis/vents/filename.js”(例如: events/compare.js 和 handlers/compare.js 是配对的,不以 common.js 结尾)。

4

2 回答 2

0

我想我们已经知道https://github.com/gruntjs/grunt-contrib-concat模块。你只需要两个不同的任务。那这个呢:

grunt.initConfig({
  concat: {
    common: {
      src: ['src/events/**/*.common.js', 'src/handlers/**/*.common.js'],
      dest: 'dist/vents/commonEvents.js'
    },
    nocommon: {
      src: ['src/events/**/*.js', 'src/handlers/**/*.js', '!src/events/**/*.common.js', '!src/handlers/**/*.common.js'],
      dest: 'dist/vents/filename.js'
    }
  }
});
于 2014-03-22T22:33:29.947 回答
0

我认为没有任何类似的东西可以使用。

如果您打算创建自己的解决方案,我认为这个包可能是一个很好的起点:

https://github.com/yeoman/grunt-usemin

它也操纵其他插件的配置。

于 2014-03-22T22:25:09.187 回答