1

我正在尝试在我的 ClojureScript 构建中使用 figwheel。

lein cljsbuild auto已经可以使用了,但我必须把:optimisations :whitespace.

否则我会在浏览器中收到一条消息:

Uncaught ReferenceError: goog is not defined

但是无花果需要: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}}]}

我缺少什么来获取缺少的依赖项?

4

2 回答 2

6

事实证明,这是 RTFM 的一个经典案例。答案在ClojureScript 快速入门指南中。

具体来说,我必须添加一个:main字段,如Less Boilerplate部分中所述:

:main "example.core"
于 2015-08-31T08:43:21.117 回答
1

没有什么会因为明显错误或缺失而跳出来。然而,lein 非常强大,它可以让你设置适合你个人品味/工作流程的东西,所以如果方法明显不同,就很难发现事情。

当我遇到这些类型的问题时,我发现使用许多库或项目提供的标准模板非常有用。我的建议是运行

lein new figwheel ft -- --reagent

这将设置一个名为 ft 的基本项目(在这种情况下也使用试剂 - om 有另一个选项,或者您可以将所有这些都保留为裸骨默认设置。有关更多详细信息,请参阅 github 上的 figwheel repo。这将提供一个良好的 lein figwheel 设置,您可以将其用作指南。

于 2015-08-31T02:16:34.940 回答