Lov*_*ing 3 clojure clojurescript reactjs reagent
我正在使用试剂在clojurescript中编写插件功能.我想在现有的react,flux应用程序中使用它.
我应该如何连接这两个?
由于ClojureScript编译器会吐出JavaScript代码,因此集成应该非常简单.只需将^:export注释添加到要从JavaScript代码访问的任何ClojureScript定义中.
; ClojureScript
(ns my-namespace.core)
(defn ^:export my-identity [x] x)
Run Code Online (Sandbox Code Playgroud)
// call from JavaScript
my_namespace.core.my_identity(5); // Notice how "-" is replaced with "_"
Run Code Online (Sandbox Code Playgroud)
如果要从ClojureScript代码中引用JavaScript函数/变量,只需在其前面添加全局名称js/.
; Calling global JavaScript function from ClojureScript
(js/alert "Hello!")
Run Code Online (Sandbox Code Playgroud)
有关更多示例,请查看有关ClojureScript/JavaScript interop的博客文章.
ClojureScript Cheatsheet上的JavaScript Interop部分也是一个很好的参考.例如,它记录了clj->js和js->clj功能,您将需要使用Clojure的风格对象(关键字,矢量地图)和JavaScript风格的对象(字符串,数组,地图/对象)之间的转换.
| 归档时间: |
|
| 查看次数: |
304 次 |
| 最近记录: |