如何配置Grunt以复制Bower字体文件?

8
我正在使用Bower安装Bootstrap和Font Awesome包,并使用Grunt作为构建解决方案。我已经配置好Wiredep以正确更新我的index.html文件,一切都运行良好。唯一的问题是将字体文件复制到dist/目录中。
我意识到我可以配置我的grunt copy:dist目标,但考虑到每个软件包可能使用不同的目录结构存储它们的字体,因此很难有一个通用规则来复制字体。此外,如果这些软件包在其bower.json文件中列出了字体,难道没有一种方法可以自动检测并复制这些字体吗?
是否有另一个Grunt插件可以像Wiredep一样识别字体文件?
我在SO上看到过其他帖子涉及相同的问题,但没有官方解决方案。
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模式,将bower_components目录中的所有字体文件移动到某个目标文件夹中。如果你不想为每个包含字体的bower包手动添加路径,这是一个不错的选择。我喜欢“手工劳动”方式。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接