Selmer是Clojure的一個模板類庫,下面是它的一個DEMO模板:css
<ul> {% for item in items %} <li>{{item}}</li> {% endfor %} </ul>
很明顯,它的{{}}的寫法很容易和AngularJS混淆起來。爲了解決這個問題,咱們能夠在它的生成模板語句中更改它的tag,經過自定義:tag-open和:tag-close便可。示例代碼以下:html
1 (ns fycoins.views.layout 2 (:require [selmer.parser :as parser] 3 )) 4 5 (def template-folder "fycoins/views/templates/") 6 7 (defn render [template & [params]] 8 (parser/render-file (str template-folder template) 9 params 10 {:tag-open \[ 11 :tag-close \]}))
這樣,咱們的模板文件就能夠寫成這樣:ui
1 <!DOCTYPE html> 2 <html> 3 <head lang="en"> 4 <meta charset="UTF-8"> 5 <title></title> 6 <link rel="stylesheet" href="[{context}]/css/screen.css" /> 7 </head> 8 <body> 9 Home 10 </body> 11 </html>