可重复使用的ClojureScript库

int*_*tar 6 clojure package google-closure-compiler clojurescript

所以,我接受了我的大型Clojure项目并将其分成两部分.

我编写了核心部分并制作了Uberjar.

然后输入:

lein deploy clojars
Run Code Online (Sandbox Code Playgroud)

将该jar公开,然后将其作为依赖项添加到我的应用程序的project.clj文件中.

这段代码是用cljx编写的,所以它可以编译成javascript.

我需要将两个cljx代码库分成两个独立的javascript库,而没有让整个ClojureScript虚拟机重复两次,这有什么相同的步骤?

更新:只是为了澄清一些事情.

1)我知道我可以转移到.cljc而不是.cljx.我唯一担心的是这看起来很新,我不知道我的代码的现有用户是否可能拥有它.但我很快就会采取行动.关于cljc的答案也是受欢迎的.

2)我已经成功地将我的代码编译为单个monolithic main.js文件.我正在寻找的是如何编译可以包含在其他cljs项目中的单独的clj库.每当我目前在cljs中编译一些内容时,我会得到一个包含整个clojurescript VM的main.js文件.

3)我回到这个问题的动机之一就是我想开始使用Figwheel.所以我希望能够在clojurescript中创建库,我可以将其放入我正在通过Figwheel开发的新clojurescript项目中.所以我想我会在这个新项目的project.clj文件中引用它们,并将它们作为已编译的.js文件包含在网页中.我错了吗?