在我的clojurescript代码中,我有以下内容:
(defn onload [] (repl/connect "http://localhost:9000/repl"))
(set! (.-onload js/window) onload)
Clojurescript repl在开发中非常有用,但我在制作过程中将它留在代码中犹豫不决。在开发(简单编译)期间使用上述代码的最简洁方法是什么,但在生产(高级编译)期间不存在?
答案 0 :(得分:7)
modern-cljs教程实际上准确地描述了如何解决此问题here。
希望有所帮助!
答案 1 :(得分:3)
不幸的是,目前没有任何明确定义的方法可以在ClojureScript中进行条件编译。
您可以添加配置变量来控制是否以各种方式启动REPL,但一种快速简便的方法是获取当前页面的主机名,并且只有repl/connnect
才会调用它“ localhost“或您用于开发工作的任何其他域。
答案 2 :(得分:1)
我认为lein2配置文件和cljsbuild src-paths munging的组合可以解决问题。例如,创建一个简单地加载你的repl的命名空间,并用最后一次编译运行的配置文件将其排除(可能需要在另一个src-path目录中创建一个虚拟命名空间)。