【问题标题】:Should we remove HTML attributes while using Thymeleaf?我们应该在使用 Thymeleaf 时删除 HTML 属性吗?
【发布时间】:2017-02-07 01:14:35
【问题描述】:

我正在研究 Thymeleaf,发现几乎所有示例中都有 Thymeleaf 的标记值以及标准 HTML 值,例如:

<title th:text="#{product.page.title}">Page Title</title>

<link href="../static/css/bootstrap-3.3.7-dist/bootstrap.min.css" rel="stylesheet"
      th:href="@{/css/bootstrap-3.3.7-dist/bootstrap.css}"/>

<script src="../static/js/jquery-3.1.1.js"
        th:src="@{/js/jquery-3.1.1.js}"></script>

Page Titlehref="../static/css/bootstrap-3.3.7-dist/bootstrap.min.css" 等这些标准标记值被控制器忽略并且不会在页面上呈现。

我想知道 – 留下它们只是为了提高代码可读性还是一个好习惯,还是删除它们以清理代码更好?

因为对于编译器来说它们是无用的,对渲染结果没有任何影响。

【问题讨论】:

  • 不,离开他们。 Thymeleaf 的主要驱动思想之一是模板本身是有效的 HTML。如果没有属性,情况就不会如此。关键是您可以在不通过 Thymeleaf 运行的情况下测试您的代码。
  • 用于测试 - 确保它必须存在!当所有代码都经过测试并准备好生产时?
  • 您在测试和生产之间更改代码?你完全疯了吗?
  • 哦,我的意思是在开发时。是否有必要在没有 Thymeleaf 的情况下测试代码?
  • 我亲自删除了它们。虽然能够将 html 视为静态页面而不是通过服务器运行它有点有趣,但我在实践中很少发现它的用途。

标签: java thymeleaf


【解决方案1】:

这完全取决于您的开发过程。

您可以在早期阶段保留 HTML 属性,而您仍在尝试仅使用浏览器来布局页面。

但是,一旦您使用自动化单元/网络测试,您可以安全地删除 HTML 属性,因为此测试应始终使用类似 prod 的环境(包括 thymeleaf)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-10
    • 1970-01-01
    • 2012-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多