Node.js的自然模板(类似于Thymeleaf).html

14

有没有适用于Node.js的自然模板?

自然模板(如Thymeleaf template engine)是指模板页面或其部分可以作为原型完美地在浏览器中显示,而无需执行任何操作。 也就是说,我有一个扩展名为.html的模板,我只需在浏览器中打开它进行预览,并使用标准HTML开发工具进行编辑。

更新:我已添加了评论中添加的答案。(新的StackOverflower用户是否害怕添加答案?)希望能听到实际使用这些东西的开发人员的回复(只需添加新答案)。


2
请参考 https://github.com/flatiron/plates? - generalhenry
1
我使用mustache;它工作得相当不错 - http://mustache.github.com/ - etienne
1
@RomanNewaza 这很严格。你会使用什么替代模板? - Augustin Riedinger
我认为他们没有回答,因为从技术上讲,盘子和胡须并不是“自然模板”引擎,所以它们不是答案。 - trusktr
我非常喜欢这个问题。我所看到的唯一的自然模板替代品是AngularJS。但据我所知,它不能与NodeJS一起用于服务器端渲染。 - JeroenVdb
https://github.com/ultraq/thymeleafjs 这个怎么样? - lubo08
4个回答

5

github.com/flatiron/plates (由generalhenry回答)

Plates(模板的缩写)将数据绑定到标记中。Plates没有特殊的语法,可以在浏览器和Node.js中使用。

活跃的


虽然这个链接可能回答了问题,但最好在此处包含答案的基本部分并提供参考链接。如果链接页面更改,仅有链接的答案可能会失效。 - Abimaran Kugathasan
1
你能否提供一些示例,展示Plates如何处理大量HTML(而不仅仅是简单的一行代码)?例如,我想看看Plates如何与完整的HTML布局一起使用。Github页面上的示例只展示了一行代码的用例。 - trusktr

0

我在后端有一个类似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>    


-2

{{ 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。


虽然此链接可能回答了问题,但最好在此处包含答案的基本部分并提供参考链接。如果链接页面更改,仅有链接的答案可能会失效。 - Abimaran Kugathasan
3
这正是原帖所不想要的,这不是自然的模板。 - Pyrolistical

-2

我之前使用的是Handlebars

实际上,在JavaScript中有很多模板引擎,你可以在这里决定你需要哪一个。


1
这正是 OP 不想要的,这不是一种自然的模板化。 - Pyrolistical

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接