ndr*_*drw 5 clojure hiccup clojurescript edn
我正在用clojure和clojurescript开发RIA.后端使用打嗝生成一个结果html,如
(html5
[:head
(include-js "/js/my-cljs-generated.js")]
[:body ... ])
Run Code Online (Sandbox Code Playgroud)
如何在生成的html中将edn(hashmap,vector等)传递给clojurescript,即不进行ajax调用?
我想让打嗝做这样的事情:
(include-edn
"var_name" {:foo :bar}) ; or any other clojure data
Run Code Online (Sandbox Code Playgroud)
并且能够以某种方式从cljs访问传递的edn(例如,通过名称).
目前我的实现有点hacky并且存储在全局js var中
(hiccup/javascript-tag (str "var edn = \""
(pr-str my-clojure-data) "\";"))
Run Code Online (Sandbox Code Playgroud)
在cljs方面确实如此
(jayq/document-ready
(fn []
(if-let [edn (.-edn js/window)]
(do-something-with (cljs.reader/read-string edn))
)
...
)
Run Code Online (Sandbox Code Playgroud)
也许有更多惯用的方法来实现这一目标?
| 归档时间: |
|
| 查看次数: |
1940 次 |
| 最近记录: |