我想知道最好的方法是使用图像&来自bower包的字体与中间人。举个例子,我正在尝试将slick.js轮播添加到我的项目中。它在凉亭上,包括凉亭代码中的css,js,图像和字体。
对于中间人,我设置了一些东西,我已经将bower_components目录添加到链轮和指南针的路径中,因此scss和js文件正在正确编译并正常工作。
但是图像和字体并没有放在任何可以使用的地方。 slick.js库使用scss并设置为使用罗盘image-url
和font-url
函数(如果它们存在),这意味着我需要以某种方式从bower_components目录获取资源从同一个地方提供作为我自己的所有图像和字体,以及在开发middleman server
模式和运行构建时都有效的方式。
我该怎么做?
显然,可能的解决方案只是将slick.js库直接供应到我的代码中,或者将它包含在已经托管的cdn中,而不用担心没有将它编译到我的单个css和js文件中。要么可以正常工作,但我想知道一般情况,对于任何使用凉亭和中间人的人来说,这肯定是常见的情况。
答案 0 :(得分:3)
我想通了 - 我认为指南针是为了要求scss文件而sprockets只是为了js,但是中间人也使用sprockets(middleman-sprockets
库)来复制任意静态资产。
它有点手动和冗长(如果有更多文件,中间人建议编写脚本以通过文件扩展名类型自动发现它们并导入它们)但我的解决方案是在{{中包含以下内容1}}文件:
config.rb
答案 1 :(得分:2)
我使用grunt,但它是同一个问题。通常,您有以下选择:
- 在bower_components目录中提供你需要的内容来源代码控制并从那里引用你的资源(有点推荐,特别是如果你在做一个构建时外部的东西已经关闭),或者你不喜欢暴露URL中的bower_components,创建一个指向bower_components文件夹的路由
将构建/中间人脚本执行中的组件复制到指定路径。没有资源可以签入此选项,您只需在代码中选择要引用的目的地,并让中间人将组件复制到那里。