欢迎!请参见关于页面了解有关此如何工作的更多信息。
正如标题所示,def看起来没有做任何事情就通过了。
例如,"(def x)"成功但是"(def x 10)"失败,因为"无法读取未定义的属性(读取'x'”)
有关信息,请参阅本文https://script.clojure.org/guides/self-hosting
建议:simple优化应该工作
重现方法: https://github.com/sstraust/ClojureDefRepro(见说明)
我没有运行代码,但我的猜测是这个代码被编译后发出
cljs.user.x = 10;
由于 cljs.user 还未定义,因此在尝试运行时将失败。因为当你在 cljs.user 之上设置 x 时会失败。请首先创建 cljs.user,或在编译时提供已存在的 :ns 选项。
cljs.user
x
:ns