我有一个 Thymeleaf 片段,其中包含一些状态文本和一个 th:each ,它没有出现在输出中。
我已经能够将模型值包含在输出列表中,并显示为 [[ 8,9...][..]...]] 所有值都是正确的。
我已经使用logging.level.org.thymeleaf=trace运行来获取日志,但似乎对我来说没有任何问题。
片段是:
<span th:fragment="view">
<div class="centered">
<h1 th:text="${sudoku_description}"></h1>
<h1 th:text="${sudoku}"></h1>
<div class="centered" >
<th:block th:each="puzzledata, rowStat : ${row}">
<div class="sudoku-row" >
<th:block th:each="row, colStat : ${cell}">
<div class="sudoku-cell" row="rowStat.index" col="colStat.index" th:text="${cell}"></div>
</th:block>
</div>
</th:block>
</div>
</div>
</span>
2 个标签存在且正确,但检查时以下
<div class="centered" >
为空。
我尝试将 th:block 更改为 div 没有任何区别。
从 Intelij 运行,控制台中没有异常或错误。
百里香叶原木提取物
[THYMELEAF] View sudoku-view :: view will be handled by ThymeleafViewResolver and a ThymeleafView instance will be created for it
[THYMELEAF][http-nio-8080-exec-1][EXPRESSION_CACHE][CACHE_HIT] Cache hit in cache "EXPRESSION_CACHE" for key "expr|~{sudoku-view :: view}".
[THYMELEAF][http-nio-8080-exec-1] Evaluating fragment: "~{sudoku-view :: view}"
[THYMELEAF][http-nio-8080-exec-1] Evaluating generic token: "sudoku-view"
[THYMELEAF][http-nio-8080-exec-1] Evaluating generic token: "view"
[THYMELEAF][http-nio-8080-exec-1] STARTING PROCESS OF TEMPLATE "sudoku-view::[view]" WITH LOCALE en_GB
[THYMELEAF][http-nio-8080-exec-1][TEMPLATE_CACHE][CACHE_MISS] Cache miss in cache "TEMPLATE_CACHE" for key "sudoku-view::[view]".
[THYMELEAF][http-nio-8080-exec-1] Template resolver match! Resolver "org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver" will resolve template "sudoku-view"
[THYMELEAF][http-nio-8080-exec-1][EXPRESSION_CACHE][CACHE_HIT] Cache hit in cache "EXPRESSION_CACHE" for key "expr|${sudoku_description}".
[THYMELEAF][http-nio-8080-exec-1] Evaluating variable expression: "${sudoku_description}"
[THYMELEAF][http-nio-8080-exec-1] SpringEL expression: evaluating expression "sudoku_description" on target
[THYMELEAF][http-nio-8080-exec-1][EXPRESSION_CACHE][CACHE_HIT] Cache hit in cache "EXPRESSION_CACHE" for key "expr|${sudoku}".
[THYMELEAF][http-nio-8080-exec-1] Evaluating variable expression: "${sudoku}"
[THYMELEAF][http-nio-8080-exec-1] SpringEL expression: evaluating expression "sudoku" on target
[THYMELEAF][http-nio-8080-exec-1][EXPRESSION_CACHE][CACHE_HIT] Cache hit in cache "EXPRESSION_CACHE" for key "each|puzzledata , rowStat : ${row}".
[THYMELEAF][http-nio-8080-exec-1] Evaluating generic token: "puzzledata"
[THYMELEAF][http-nio-8080-exec-1] Evaluating generic token: "rowStat"
[THYMELEAF][http-nio-8080-exec-1] Evaluating variable expression: "${row}"
[THYMELEAF][http-nio-8080-exec-1] SpringEL expression: evaluating expression "row" on target
[THYMELEAF][http-nio-8080-exec-1] FINISHED PROCESS AND OUTPUT OF TEMPLATE "sudoku-view::[view]" WITH LOCALE en_GB
[THYMELEAF][http-nio-8080-exec-1][sudoku-view][en_GB][1127600][1] TEMPLATE "sudoku-view::[view]" WITH LOCALE en_GB PROCESSED IN 1127600 nanoseconds (approx. 1ms)
每天的开发日都证明了一个人是多么愚蠢。
问题是其中的值。每个方向都是错误的!
这有效:
<th:block th:each="row, rowStat : ${puzzledata}">
这不:
<th:block th:each="puzzledata, rowStat : ${row}">