8

我正在使用 bower 来安装bootstrapfont-awesome打包,并Grunt用作构建解决方案。我已wiredep配置为正确更新我的 index.html 文件。一切都很好。我唯一的问题是将字体文件复制到dist/目录中。

我意识到我可以配置我的 gruntcopy:dist目标,但是考虑到每个包可能使用不同的目录结构来存储它们的字体,所以很难有一个单一的规则来复制字体。此外,如果这些包的文件中列出了字体bower.json,是否有办法检测这些字体并自动复制它们?

我可以使用另一个 Grunt 插件来识别字体文件,就像wiredep识别 css/js 文件一样?

我在 SO 上看到了与同一问题相关的其他帖子,但没有官方解决该问题的方法。

4

1 回答 1

1

我意识到这个问题有点老了,但我使用了一个名为 grunt-bowercopy ( https://www.npmjs.com/package/grunt-bowercopy ) 的插件来完成我从 Bower 包中复制的大部分内容。不过,它可能需要一些手动配置,因此可能无法满足您的要求。

您的 bowercopy 配置可能如下所示:

bowercopy: {
    // Global bowercopy options
    options: {
        runBower: true
    },
    // Move fonts from bower packages into font folder
    fonts: {
        options: { destPrefix: '/dist/fonts' },
        files: {
            '': 'fontawesome/fonts/*'
        }
    }
}

您可以调整 glob-pattern 以简单地将 bower_components 目录中的所有字体文件移动到某个目标文件夹中。如果您不喜欢为每个包含字体的 bower 包手动添加路径,那么这是一个不错的选择。不过我喜欢“体力劳动”。

于 2015-10-01T00:42:23.470 回答