节点模板引擎,如EJS,不会破坏HTML模板

Node template engine, like EJS, that doesn't break the HTML template?

本文关键字:模板 HTML EJS 引擎 节点      更新时间:2023-09-26

想知道是否有一个像NodeJS的EJS这样的模板引擎,它不会通过使用括号破坏原始模板HTML。

例如,在EJS中,可以使用以下命令将特定的数据插入HTML模板:

<script>
    window.$data = <%- JSON.stringify(data, null, 4) %>;
</script>

注意,<%- %>括号破坏了源HTML文件,当您想暂时放弃使用EJS解析器时,它对于快速测试是无用的。

暂时忽略有用性的争议,是否有好的数据注入库用于Node而不破坏模板?或者,我敢说,对于将字符串化的对象简单地注入到某个<script>元素中,正则表达式是不可能的吗?

如您所知,EJS会用'<%>'来破坏HTML,它的语法看起来很像ASP.

如果你想要一个不破坏HTML的新模板,并且有一个很好的编码工作流程,你可以试试这个:
Github: https://github.com/eshengsky/saker

这是我个人的开源项目Saker,它提供了一种简洁而富有表现力的语法,它干净、快速、有趣。

预览:

<span>@name</span>
<a href="/detail/@id">@title</a>