我是Clojurescript的初学者,我有一个疑问。现在我只是在CLJS文件中编写一堆实用程序函数,这些函数将在其他CLJS项目中使用。
所以我还需要使用cljsbuild插件将我的CLJS文件编译成JS吗?如果不是,我如何编译我的CLJS源文件以检查错误和所有?
答案 0 :(得分:1)
首先,我建议让CLJS REPL运行。一种选择是使用boot cljs。在此设置https://github.com/adzerk-oss/boot-cljs-repl
的说明或者,如果您的功能简单或纯粹,并且没有外部依赖性,您可以尝试浏览器REPL,例如http://clojurescript.io无需设置。
无论哪种方式,您都可以将函数粘贴到REPL中并进行测试。您将获得即时反馈。这应该让你开始。稍后,您可以添加测试基础架构以自动化测试。玩得开心!
答案 1 :(得分:1)
当ClojureScript项目依赖于库中的ClojureScript代码时,它直接依赖于库的ClojureScript源代码。 (出于依赖性目的,不需要将该库的代码编译为JavaScript,事实上,该模型实际上并不受支持。)
ClojureScript项目如何依赖于ClojureScript库的代码?通常,库的代码放在JAR中,并且JAR放在项目的Java类路径中。 (这些JAR通常被部署到Clojars或Maven中心。)
使用deps.edn
的更新,更灵活的替代方法是让ClojureScript项目依赖于JAR(如前一段所述),或者直接依赖于磁盘上库的本地路径(使用{ {1}})或图书馆的GitHub来源(使用:local/root
和:git/url
)。
要在本地编译和测试代码,可以使用cljs.main
在REPL中加载代码并进行练习。这通常可以像设置:sha
然后运行
deps.edn
然后使用clj -m cljs.main
将命名空间加载到REPL中。 Quick Start指南非常值得一读。
您可以使用(require my-ns.core)
运行基于cljs.main
的测试。使用Node运行此类测试的示例是here。
还有其他更复杂且功能丰富的选项可用于编译和测试ClojureScript库代码;以上内容涵盖了ClojureScript本身附带的一些更简单的选项。