2024 Clojure 状态调查! 中分享您的想法。

欢迎!请访问 关于 页面以了解更多关于此如何工作的小信息。

+1
ClojureScript

我只是弄坏了我们的 cljsbuild,我很想知道这是错误还是预期行为。

我们有一个外部的 JS 文件定义了一个全局对象和函数: link.myfn(),有一个描述它的 externs 文件。我们有一个与前缀共享的命名空间: link.theme。在开发中,这按预期工作。然而,在高级优化中,它失败了,因为我们的 cljs 输出以某种方式定义了一个空的 link 对象,实际上覆盖了来自外部库的对象。如果我不排除 externs 和外部库,就不会创建空对象。

我已经创建了一个可以复现这个问题的仓库,并解释了我在其中尝试的四种情况,只有其中一种会失败:https://github.com/cjohansen/cljsns

这看起来像是一个错误,但可能是我不知道的一些编译器细节。有人知道吗?

1 答案

0
by

你尝试使用 Google Closure 来重现这个了吗?看起来这应该不是很难实现。

...