gpt4 book ai didi

playframework - Sass 包含和 Webjars

转载 作者:行者123 更新时间:2023-12-04 03:52:27 24 4
gpt4 key购买 nike

我正在将一个 Play 项目迁移到 2.3,并使用 ShaggyYeti 的 sbt-sass plugin 编译我的 SCSS 文件(来自 play-sass plugin 的变化)。我将所有内容打包成一个缩小的 css,放在 /assets/stylesheets/main.min.css 中。一切正常,直到我开始使用 webjars 拉取前端库。

webjars 本身工作正常,我能够将它们的 scss 捆绑到我的主 css 中,但是从引用其他资源的 webjars 捆绑 scss 时存在问题。例如font-awesome将下载到 lib/font-awesome,字体位于 /assets/lib/font-awesome/fonts/fontawesome-webfont.eot 等位置。问题是 font-awesome scss 使用 ../fonts/fontawesome-webfont.eot 引用它,编译后将是 /assets/fonts/fontawesome-webfont.eot

我是不是遗漏了什么,或者这些是尚未解决的怪癖,因为这个新系统已经到位的时间很短?如果是后者,您认为哪个是正确的解决方案?

  1. 我应该使用插件来移动/复制预期文件夹中的引用文件吗?或者
  2. SCSS 编译器/插件是否应该重写 webjar 下载文件夹的路径?或者
  3. 我是否应该将字体超棒的缩小 css 作为单独的链接包含在内?

我倾向于认为 (2) 是正确的解决方案,因为 webjar 中的 scss 显然引用了与 scss 相关的资源。这应该相对于 objective-c ss 进行重写。

最佳答案

这应该有更好的支持,我解决了在模板中直接声明引用的问题:

<link rel="stylesheet" href="@routes.WebJarAssets.at(WebJarAssets.locate("font-awesome.min.css"))" />

尝试在我的 main less 中导入 font-awesome 之前:

@import "lib/font-awesome/less/font-awesome.less";

但导入的行为如您所说,但不起作用。问题是如果你想要自定义的更少(这就是使用更少的原因)而不是你不能做的那么直截了当。另一种解决方法是将字体文件夹放在公共(public)文件夹中并一起提交。

这个问题在sass和其他资源中也会出现。

关于playframework - Sass 包含和 Webjars,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26495287/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com