【问题标题】:SpringBoot does not load css when using uritemplatingSpring Boot在使用uritemplate时不加载css
【发布时间】:2018-07-07 10:27:01
【问题描述】:

我正在使用带有 thymeleaf 的 springboot 来开发一个网站。该框架可以在不使用 uritemplating 时正确加载引导 css 文件,但是当我更改为 uritemplating 时引导 css 会中断。

这很好用

@GetMapping("/update_avatar")
public String update_avatar(){

    return "update_avatar";
}

这会破坏 css 加载

@GetMapping("/update_avatar/{userid}")
public String update_avatar(@PathVariable String userid){

    System.out.println("Testing Variable: "+userid);
    return "update_avatar";
}

这是我包含样式表的方式

<link rel="stylesheet" type="text/css"
      href="webjars/bootstrap/3.3.7/css/bootstrap.min.css" />

<link rel="stylesheet" th:href="@{/css/main.css}"/>
<link rel="stylesheet" th:href="@{/css/tutors.css}"/>

请注意,我通过执行以下操作使用 maven 包含了 Bootstrap

<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap</artifactId>
    <version>3.3.7</version>
</dependency>

我尝试基于此解决方案实现 viewRsolver,但它对我不起作用CSS not loading in Spring Boot

【问题讨论】:

  • 您能否发布包含&lt;link... 元素的模板代码并告诉我们css 文件在项目目录结构中的位置?
  • 我只是包含了上面的sn-ps,我用maven在项目中包含了bootstrap
  • 知道了,你添加了资源处理程序(#4)baeldung.com/maven-webjars 吗?
  • 让我看看这篇文章。
  • 我刚想到您可能需要将webjars 更改为绝对值:/webjars 而不是webjars。对于其他人,请查看呈现的 HTML 并确认路径是否正确(例如他们正在呈现&lt;link rel="stylesheet" href="/css/main.css"/&gt;

标签: java spring spring-mvc spring-boot thymeleaf


【解决方案1】:

哦,我终于让它工作了,尽管 我没有详细解释为什么代码不起作用。我的资源配置类中有这个@EnableWebMvc 注释,它把一切都搞砸了。我从this site 的示例中提取了注释,所以如果您知道它的含义,请帮忙解释一下。

我还添加了 registry.addResourceHandler("/webjars/**").addResourceLocations("/webjars/"); 正如克里斯上面建议的那样,我的资源配置类。

【讨论】:

    猜你喜欢
    • 2014-02-07
    • 1970-01-01
    • 2019-06-23
    • 1970-01-01
    • 2021-03-25
    • 2019-04-26
    • 2019-05-16
    • 1970-01-01
    • 2017-01-31
    相关资源
    最近更新 更多