首页 文章

Thymeleaf开启整数,大于

提问于
浏览
0

这可能是一个简单的问题,但我似乎无法想到它的答案 .

我有这个简单的Thymeleaf代码:

<ul data-th-switch="${someVar}">
    <li data-th-case="${gt 6}">someVar is greater than 6.</li>
    <li data-th-case="*">Default case.</li>
</ul>

我在data-th-case =“$ {gt 6}”上收到错误 . 在Thymeleaf有办法做到这一点吗?

提前致谢 .

1 回答

  • 1

    语法确实是错误的 . Details .

    一个正确的语法是 "${someVar} gt 6" 但当然,它将无法正常工作,尽管模板将呈现 . 这是因为 ${someVar} 的计算结果为12(例如),而 ${someVar} gt 6 计算结果为 true . 这些并不相同 .

    如果启用ThyemeLeaf跟踪,您将看到百里香叶如何解释这一点:

    o.t.s.expression.GreaterThanExpression   : Evaluating GREATER THAN expression: "${someVar} > 6". Left is "12", right is "6". Result is "true"
    o.t.s.expression.EqualsExpression        : Evaluating EQUALS expression: "${someVar} == (${someVar} > 6)". Left is "12", right is "true". Result is "false"
    

    根据您要实现的逻辑,您可能会遇到非常不同的解决方案 - 例如从将小工具放入模型到实现if-else逻辑 . 请查看此问题以获取更多ideas .

相关问题