2024 年 Clojure 调查! 中分享你的想法。

欢迎!请查看 关于 页面以获取更多有关此功能的信息。

0
ClojureScript

当使用代码拆分以及高级优化(默认启用 :optimize-constants)时,预编译的关键词总是会编译到 cljs-base,即使它们仅由一个模块使用。

如何重现

  1. 解压附加的最低版本(基本上是从 https://script.clojure.org/guides/code-splitting)中稍作编辑的示例
  2. java -cp /path/to/cljs.jar:src clojure.main release.clj
  3. 检查生成的文件

实际行为

即使 :this-is-a-very-long-keyword 只在 bar.cljs 中使用,它也会被编译到 cljs_base.js 中。在第 286 行(已删除)

var ...,Rg=new L(null,"this-is-a-very-long-keyword","this-is-a-very-long-keyword",-1251510263),...;

期望行为

Rg 的定义应该在 bar.js 中。

1 答案

0
by
参考: https://clojure.atlassian.net/browse/CLJS-3063(由 alex+import 报告)
...