有没有适用于Node.js的自然模板?
自然模板(如Thymeleaf template engine)是指模板页面或其部分可以作为原型完美地在浏览器中显示,而无需执行任何操作。 也就是说,我有一个扩展名为.html的模板,我只需在浏览器中打开它进行预览,并使用标准HTML开发工具进行编辑。
更新:我已添加了评论中添加的答案。(新的StackOverflower用户是否害怕添加答案?)希望能听到实际使用这些东西的开发人员的回复(只需添加新答案)。
有没有适用于Node.js的自然模板?
自然模板(如Thymeleaf template engine)是指模板页面或其部分可以作为原型完美地在浏览器中显示,而无需执行任何操作。 也就是说,我有一个扩展名为.html的模板,我只需在浏览器中打开它进行预览,并使用标准HTML开发工具进行编辑。
更新:我已添加了评论中添加的答案。(新的StackOverflower用户是否害怕添加答案?)希望能听到实际使用这些东西的开发人员的回复(只需添加新答案)。
github.com/flatiron/plates (由generalhenry回答)
Plates(模板的缩写)将数据绑定到标记中。Plates没有特殊的语法,可以在浏览器和Node.js中使用。
活跃的
我在后端有一个类似jinja的模板引擎。
我的前端有时需要从服务器检索数据,并与HTML5模板标记的内容进行插值。
我可以使用查询选择器来完成这个任务。但是我想要更接近thymeleaf或mustache的东西,而不需要特殊的语法(尤其是不会与我的后端模板引擎冲突,并且在HTML5模板标记中呈现时不会出现任何问题)。
所以我创建了这个:
https://github.com/marcodpt/tint
虽然这在浏览器中可以工作(对于我的个人使用来说很好),但使用DOM API将其移植到node或deno并不困难。
<html>
<head>
<script type="module">
import compile from "https://cdn.jsdelivr.net/gh/marcodpt/tint@2.0.0/template.js"
const render = compile(document.getElementById("app"))
render({
message: "Hello World!"
})
</script>
</head>
<body>
<div id="app">
<h1 :text="message">Loading...</h1>
</div>
</body>
</html>
{{ mustache }}(由 etienne 回答)
无逻辑模板。
适用于 Ruby、JavaScript、Python、Erlang、PHP、Perl、Objective-C、Java、.NET、Android、C++、Go、Lua、ooc、ActionScript、ColdFusion、Scala、Clojure、Fantom、CoffeeScript、D 和 node.js。
非常适合 TextMate、Vim、Emacs 和 Coda。
我之前使用的是Handlebars。
实际上,在JavaScript中有很多模板引擎,你可以在这里决定你需要哪一个。