我已经构建了一个主要使用Angular的应用程序。现在我想将项目转换为Clojurescript。我们都知道Clojurescript与JavaScript的互操作非常好,但是反过来可行吗?
常规JavaScript / Angular代码如何利用Clojurescript生成的JavaScript?
梦想是在clojurescript中编写新功能,让它们与遗留代码并行工作。
欢迎任何关于此的提示或技巧。
答案 0 :(得分:13)
Clojurescript变量,函数和deftypes /记录是正常的JS变量,函数和构造函数/对象,因此您可以在javascript中使用cljs.core.abc()
并调用clojurescript而不会出现问题。
警告是:
cljs.core/<
变为cljs.core._LT_
。您有多种选择:
^:export
(如果您定义名称)或类似goog.exportSymbol
显式导出的CLJS函数。 CLJS和遗留代码部署在单独构建的独立JS文件中。答案 1 :(得分:1)
对于ClojureScript中的Angular集成,您可以使用the gyr extension。 对于从Clojure类型到Java Script类型的数据转换,您可以使用clj->js。