4

我开始尝试IHP 的 webframework。我正在测试一些不同的页面布局,在尝试设计时,我似乎找不到在 hsx QuasiQuote(具有 blaze-html 语法)中注释掉 html 的正确方法。例如,我想在下面临时评论用户的链接:

 [hsx |
 <a class="nav-link active" href={UsersAction}> Users  </a>
 <a class="nav-link active" href={SitesAction}> Current Projects </a>
 <a class="nav-link active" href={NewSiteAction}> Add New Project </a>
 |]

我尝试过注释行 html 样式:

[hsx |
  <!-- <a class="nav-link active" href={UsersAction}> Users  </a> -->
|]

但这会产生编译错误:

unexpected '!'

我也试过用花括号将它作为haskell评论转义,但这会产生

compileToHaskell(-- <a class="nav-link active" href={UsersAction}> Users  </a>   ): "0\nSrcLoc \"\" 1 65\nParse error: EOF\n"

本质上,我正在寻找一种方法来注释 [hsx|...|] QuasiQuote 块中的代码行或代码块,但我不确定我到底需要转义什么。

4

1 回答 1

4

HSX 以前不支持 HTML 注释。我刚刚将它添加到 HSX 语法中:https ://github.com/digitallyducing/ihp/pull/349

将成为今天晚些时候发布的下一版 IHP 的一部分。然后这个语法将起作用:

[hsx|
<div>
    <!-- Comment -->
</div>
|]
于 2020-08-21T15:56:36.657 回答