微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Grails资源插件的CSS文件中的URL 1.2.7

最近将Grails项目升级到2.3.7,并将插件升级到最新版本,这将将Resources插件引入1.2.7。这对Grails 2.1.2和资源插件1.2RC3工作正常,但现在不是:

每当我有一个css文件通过这样的URL引用某些东西

.checkBox-input-wrap.checked {
  background-image: url(/img/uniform-assets/checkBox.png);
}

在网页上,它导致了这个错误(它正在网址前面留下“resource:/”)

GET resource:/img/uniform-assets/checkBox.png net::ERR_UNKNowN_URL_SCHEME

解决方法

根据我之前的评论,这对我来说不是一个问题,因为认情况下,/ images,/ css和/ js下的所有资源都被用作Grails中的adhoc资源,我正在使用图像中的.png文件进行测试。

我从同事那里再次遇到这个问题,让我想了两次。 :)在他的情况下,他试图从/ fonts访问由应用程序中使用的插件提供的字体。

在尝试以下答案之前,我尝试通过添加以下配置来禁用css重写:

//Not required
//grails.resources.rewrite.css = false

但是当我处理一个字体资源时,这对我来说没有任何意义。

最终,将其作为Config.groovy的一部分添加到字体中是一个窍门。对于你的情况,你需要做如下:

grails.resources.adhoc.includes = ['/img/**']
//If resource served from a plugin
//grails.resources.adhoc.includes = ['/plugins/**','/img/**']

如果你已经有了这个配置,它看起来像:

grails.resources.adhoc.includes = [
    '/images/**','/css/**','/js/**','/img/**'
]

但是正如我所说,您可能不需要在grails应用程序中添加现有资源的adhoc include。

先继续

grails干净(在更安全的一面)
> grails run-app
>清洁浏览器缓存(我喜欢Chrome中的隐身模式,如果Chrome使用)
>点击应用网址

不要再抱怨资源了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。