ClojureScript中的模板

ClojureScript中的模板,clojure,clojurescript,client-side-templating,Clojure,Clojurescript,Client Side Templating,我想使用ClojureScript制作一个单页风格的web应用程序。为此,我需要一个客户端模板系统。有没有人对我应该研究的ClojureScript模板系统有任何经验和/或建议?谢谢。我发现这很有帮助。你可以看看,Prismatic编写/使用的模板系统。使用了Crate和Dommy,我可以说它们都非常好。Crate只是从Clojure转换为Clojurescript的Hiccup的一个实现,用于模板制作,所以您仍然需要使用Domina来选择元素。如果您想要一个同时处理DOM选择和模板化的框架,请

我想使用ClojureScript制作一个单页风格的web应用程序。为此,我需要一个客户端模板系统。有没有人对我应该研究的ClojureScript模板系统有任何经验和/或建议?谢谢。

我发现这很有帮助。

你可以看看,Prismatic编写/使用的模板系统。

使用了Crate和Dommy,我可以说它们都非常好。Crate只是从Clojure转换为Clojurescript的Hiccup的一个实现,用于模板制作,所以您仍然需要使用Domina来选择元素。如果您想要一个同时处理DOM选择和模板化的框架,请使用Dommy

我知道Clojurescript有三种模板化风格:

Dommy:直接从cljs代码创建和操作DOM节点。 板条箱:声明和操作cljs数据向量、映射等,然后将其转换为DOM节点。 :在HTML文件中编写HTML,处理它们并从cljs转换它们。这是关于模板的另一种思考方式,它基于clj库Enlive。 有些库生成React DOM节点而不是普通DOM节点,但其工作方式与上面提到的相同:

任何CLJ反应包装,如Om或试剂 萨布罗诺 奇奥
我知道您只是要求模板化,React还不止这些,但是如果您需要最基本的操作之外的任何东西,我建议您使用任何基于React的方法。

除了您已经收到的答案之外,我建议您检查基于,或的系统。在这三种方法中,我个人最喜欢的是试剂,但它们中的任何一种都比传统的DOM操作IMHO有所改进。

因为到目前为止还没有人提到过它:我真的很喜欢。它结合了以下一组工具:

自定义HTML元素是常规函数,可以使用创建和组合。 具有ClojureScript库的类似电子表格的数据流。使用单元格和公式直观地模拟反应行为。 使用Clojure和ClojureScript库与服务器交互。在服务器上定义函数,从客户端调用它们。 您可以将其用作完整的堆栈解决方案,也可以仅在客户端使用它。给您留下的印象来自:

页面索引.html 定义我的列表[&项] div 当前位置分类我的列表 apply ul map li div:为我的列表项%items分类 def单击单元格0 html 头 标题示例页 身体 你好,霍普伦 我的名单 第一件事 第二件事 到目前为止,您已经点击了{clicks}次。 按钮:点击交换!点击我