Как загрузить файл CSS в Micronaut с помощью Thymeleaf? - PullRequest
0 голосов
/ 13 января 2019

Как загрузить файл CSS в Micronaut с помощью Thymeleaf?

Вот мое index.html содержание:

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Demo</title>
    <link th:href="@{public/style.css}" type="text/css" rel="stylesheet" />
</head>
<body></body>
</html>

Вот application.yml:

router:
  static:
    resources:
      default:
        enabled: true
        mapping: /**
        paths: 'classpath:public'

Примечание к изображению:

resource directory structure

Ответы [ 2 ]

0 голосов
/ 26 марта 2019

В вашей конфигурации есть две ошибки:

  1. Как упомянул Грэм Роше, mapping: /** свяжет общую папку с корневым путем вашего приложения, т.е. файл будет доступен на <BASE_URL>/style.css, но вы ожидаете, что он будет на <BASE_URL>/public/style.css в вашем HTML-файле. .

  2. Ваша конфигурация определена неправильно. то есть он должен начинаться с micronaut вместо router

Следующая конфигурация устраняет проблему для вас:

micronaut:
  router:
    static-resources:
      default:
        enabled: true
        mapping: "/public/**"
        paths: "classpath:public"
0 голосов
/ 14 января 2019

Отображение mapping: /** будет монтировать его под корнем. Если вы хотите, чтобы он был доступен под public, возможно, вы захотите добавить префикс /public к этому отображению

...