- refs.
- weavejester/hiccup: Fast library for rendering HTML in Clojure
- developped by 👨James Reeves(@weavejester).
- enlive-html はhiccopとは別の人気テンプレートエンジン.
- 📝reagent はhiccop-likeな記法を採用している.
Hiccopとは
HTMLをClojureのデータ構造で表現するDSL.
タグをvector, 属性をhashmapで表現.
(個人的には みたいな HTMLタグよりも圧倒的に読みやすい気がした).
Example
liに対する unique key
Reactの仕様でul/liのなかではuniqueなidを振る必要がある.
Warning: Every element in a seq should have a unique :key
(defn lister [items]
[:ul
(for [item items]
^{:key item} [:li "Item " item])])
References
- Part4: テンプレートエンジンを使う — Clojure の日本語ガイド
- 日本語情報でのhiccopの実装例.
- 超変換! Hiccup data structure!! - Speaker Deck
- こちらも日本語での資料.