Я использую bower для установки пакетов bootstrap
и font-awesome
и используйте Grunt
как решение для сборки. У меня wiredep
настроен на правильное обновление моего файла index.html. Все отлично работает. Единственная проблема, с которой я сталкиваюсь, - это копирование файлов шрифтов в каталог dist/
.
Я понимаю, что могу настроить my grunt copy:dist
target, но учитывая, что каждый пакет может использовать другую структуру каталогов для хранения своих шрифтов, сложно создать одно правило для копирования шрифтов. Кроме того, если в этих пакетах есть шрифты, перечисленные в их файлах bower.json
, нет ли способа обнаружить эти шрифты и скопировать их автоматически?
Есть ли еще один плагин Grunt, который я могу использовать, который распознает файлы шрифтов тем же способом wiredep
распознает файлы css/js?
Я видел другие сообщения о SO, которые относятся к одной и той же проблеме, но не официальное решение проблемы.
Я понимаю, что этот вопрос немного устарел, но я использую плагин под названием grunt-bowercopy (https://www.npmjs.com/package/grunt-bowercopy), чтобы выполнить большую часть моих копирование с палубных пакетов. Это может потребовать немного ручной настройки, поэтому, возможно, это не соответствует вашим требованиям.
Ваша конфигурация 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 в какую-то папку назначения. Это достойный вариант, если вам не нравится вручную добавлять путь для каждого пакета баннеров, который включает в себя шрифты. Мне нравится "ручной труд".