大佬教程收集整理的这篇文章主要介绍了angularjs – 与JavaScript的Clojurescript互操作性,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
常规JavaScript / Angular代码如何利用Clojurescript生成的JavaScript?
我们的梦想是在clojurescript中编写新功能,并让它们与遗留代码并行工作.
有关这方面的任何提示或技巧都是受欢迎的.
警告是:
>名字改变. Clojurescript名称允许比javascript更广泛的字符,因此许多函数名称将被释放.例如. cljs.core /<成为cljs.core._LT_.@H_301_14@>宏.宏仅存在于clojurescript编译时,因此您无法使用javascript中的CLJS宏.@H_301_14@>高级编译. Clojurescript核心非常大,它依赖于Google Closure编译器来消除死代码,这只在高级编译中可用.在纯粹的clojurescript代码but harder in javascript code中,使用高级编译非常容易.(最大的危险是混合字符串和符号@L_607_19@访问.)
您有很多选择:
> CLJS将遗留代码嵌入为库.您的程序入口点是CLJS,但使用您的遗留代码,如外部库.您的遗留代码为CLJS调用遗留代码的位置提供了外部代码.传统代码仅调用使用^:export显式导出的CLJS函数(如果您定义名称)或类似于goog.exportSymbol
.CLJS和遗留代码部署在单独构建的单独JS文件中.@H_301_14@> CLJS直接嵌入遗留代码.程序入口点是CLJS,但您的遗留代码是编译到同一项目中的其他js. CLJS和遗留代码部署在由clojurescript编译器构建的单个JS文件中.要使用高级编译,您的遗留代码必须安全地与高级编译一起使用,并且结构化以便与Google Closure编译器一起使用(goog.provides / requires,type Annotations等). Angular可能必须保持独立,但有@L_262_0@angular extern available.@H_301_14@>旧代码将CLJS代码称为库.这与“CLJS将遗留代码作为库嵌入”几乎相同,除了您的入口点是遗留代码并且它调用导出的cljs函数.@H_301_14@>传统代码通过库(如mori)使用一些CLJS功能.这里你没有直接使用CLJS,而是@L_262_0@JS库,它将clojurescript的一些功能暴露为普通的Js.它仍然是@L_262_0@单独的js库,你永远不会写任何clojurescript.
以上是大佬教程为你收集整理的angularjs – 与JavaScript的Clojurescript互操作性全部内容,希望文章能够帮你解决angularjs – 与JavaScript的Clojurescript互操作性所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。