我正在使用bower-installer将我需要的文件从bower_components文件夹复制到bower_dist文件夹中。这是bower.json文件的相关部分:
"install": {
"path": "bower_dist"
},
"dependencies": {
"jquery": "~2.1.4",
"bootstrap": "~3.3.4",
"slick.js": "~1.5.5"
},
现在这是创建bower_dist文件夹并在其中为每个组件创建文件夹。问题是在slick.js组件中我有几个文件(eot,svg,ttf,woff)我需要在/slick.js/fonts
文件夹中(而不仅仅是/slick.js/
文件夹)。
我该怎么做?我已经尝试为eot,svg,ttf和woff指定特殊情况,但随后它将应用于所有组件。另外,我不想引入需要指定所有文件类型(js,css等)...而只想为slick.js配置特殊字体类型。这可能吗?
答案 0 :(得分:6)
此处的问题似乎是 slick.js 在bower.json
main
文件数组中使用了一个glob模式,即not supported...
js/*.js
等全球 。
您应该执行以下操作...
在bower.json
文件中覆盖 slick.js 所需的文件(请参阅Install multiple main files和Configurable paths)
"install": {
"base": "bower_dist",
"path": {
"js": "{name}",
"css": "{name}",
"eot": "{name}/fonts",
"svg": "{name}/fonts",
"ttf": "{name}/fonts",
"woff": "{name}/fonts"
},
"sources": {
"slick.js": [
"bower_components/slick.js/slick/slick.min.js",
"bower_components/slick.js/slick/slick.css",
"bower_components/slick.js/slick/slick-theme.css",
"bower_components/slick.js/slick/fonts/slick.eot",
"bower_components/slick.js/slick/fonts/slick.svg",
"bower_components/slick.js/slick/fonts/slick.ttf",
"bower_components/slick.js/slick/fonts/slick.woff"
]
}
}
将bower_components
替换为您的凉亭安装目录。
答案 1 :(得分:2)
事实证明这比我想象的更难:
"install": {
"path": "bower_dist",
"sources": {
"slick-carousel": {
"mapping": [
{ "bower_components/slick-carousel/slick/slick.min.js": "slick.min.js" },
{ "bower_components/slick-carousel/slick/slick.css": "slick.css" },
{ "bower_components/slick-carousel/slick/slick-theme.css": "slick-theme.css" },
{ "bower_components/slick-carousel/slick/ajax-loader.gif": "ajax-loader.gif" },
{ "bower_components/slick-carousel/slick/fonts/slick.eot": "fonts/slick.eot" },
{ "bower_components/slick-carousel/slick/fonts/slick.svg": "fonts/slick.svg" },
{ "bower_components/slick-carousel/slick/fonts/slick.ttf": "fonts/slick.ttf" },
{ "bower_components/slick-carousel/slick/fonts/slick.woff": "fonts/slick.woff" }
]
}
}
},
我已升级到新版本的slick.js,现在它被称为凉亭中的光滑轮播 - 只是为了解释包名称的差异。