我正在尝试在我的ClojureScript构建中使用figwheel。
它已经与lein cljsbuild auto
一起使用,但我必须放:optimisations :whitespace
。
否则我在浏览器中收到一条消息:
Uncaught ReferenceError: goog is not defined
然而,figwheel需要:optimisations :none
才能运行。以下是我的leiningen
文件的一部分:
:cljsbuild {
:builds
[{:id "dev"
:source-paths ["src/cljs"]
:figwheel { :websocket-host "localhost"
;;:on-jsload "example.core/fig-reload"
:autoload true
:heads-up-display true
:load-warninged-code true
;;:url-rewriter "example.core/fig-url-rewrite"
}
:compiler {;; :main
:output-to "resources/public/js/gdb/gdb.js"
:output-dir "resources/public/js/gdb/cljsbuild-dev"
;;:asset-path "js/out"
:optimizations :none
:source-map "resources/public/js/gdb/gdb.js.map"
:pretty-print true}}]}
我缺少什么来获取缺少的依赖项?
答案 0 :(得分:6)
事实证明这是RTFM的经典案例。 答案在ClojureScript quickstart指南中。
具体来说,我必须添加:main
部分中指定的:main "example.core"
字段:
offsetCardsCallback
答案 1 :(得分:1)
没有任何事情因为明显错误或缺失而跳出来。然而,lein在某种程度上非常强大,它可以让你根据自己的个人品味/工作流程设置东西,所以如果方法明显不同,很难发现事情。
当我遇到这些类型的问题时,我发现使用许多库或项目提供的标准模板非常有用。我的建议是运行
lein new figwheel ft -- --reagent
这将设置一个名为ft的基本项目(在这种情况下还带有试剂 - 还有另一个选项可以用于om或者你可以将所有这些保留为裸骨默认。请参阅github上的figwheel repo了解更多详情。将提供一个良好的工作lein figwheel设置,hyou可以作为指导。