Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

修复 grunt peaches 不支持处理多个文件的 BUG,修改 src-dest mapping 方式 #4

Merged
merged 5 commits into from Sep 6, 2013

Conversation

Projects
None yet
2 participants
Contributor

allenm commented Sep 6, 2013

修改之后,完全兼容 grunt 支持的所有 src-dest mapping 写法,详情见:http://gruntjs.com/configuring-tasks

Contributor

allenm commented Sep 6, 2013

https://github.com/spmjs/apm/pull/41

这个 APM 的 PR 中,我把 APM 中的关于 grunt-peaches 的配置增加了 expand:true 的配置,来适配这个 grunt-peaches 的 PR

Owner

afc163 commented Sep 6, 2013

https://github.com/allenm/grunt-peaches/blob/master/tasks/peaches.js#L49

这行不合理,一个 fileObj 就可能包含多个文件。例如 dist 目录下的所有文件:

files: [{
  expand:true,
  cwd: '.build/dist',
  src: '**/*.css',
  dest: '.build/dist'
}]

之前就是因为 peaches-examples 下会生成 index.css 和 index-debug.css ,这里只处理 index.css ,但是如果有多个 index2.css 和 index3.css 就处理不了了。

Owner

afc163 commented Sep 6, 2013

主干的代码已经增加了 expend 配置,升级了 peaches 的版本等。

可以基于最新的主干再 pull 一个。

Contributor

allenm commented Sep 6, 2013

对于你列出的这种写法,grunt 会自动拆成一个 src 文件对应一个 dist 文件的方式。这种情况 this.files 包含多个 src-dest 文件(取决于 dist 目录下的文件数量)。

这样写,主要是防止:

 files: {
        'dest/b.js': ['src/bb.js', 'src/bbb.js'],
        'dest/b1.js': ['src/bb1.js', 'src/bbb1.js'],
      }

这种写法,和

files: [
        {src: ['src/aa.js', 'src/aaa.js'], dest: 'dest/a.js'},
        {src: ['src/aa1.js', 'src/aaa1.js'], dest: 'dest/a1.js'},
      ]

这种写法。

这两种写法一般用于 concat 服务,多个 src 文件对应一个 dest 文件。

而 peaches 是不支持 css concat 的,既然处理不了,就直接终止服务吧。

Contributor

allenm commented Sep 6, 2013

合并好了你的主干,只看到升级了版本。

@afc163 afc163 added a commit that referenced this pull request Sep 6, 2013

@afc163 afc163 Merge pull request #4 from allenm/master
修复 grunt peaches 不支持处理多个文件的 BUG,修改 src-dest mapping 方式
b35c06e

@afc163 afc163 merged commit b35c06e into afc163:master Sep 6, 2013

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment