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
参考: https://clojure.atlassian.net/browse/CLJS-3063(由 alex+import 报告)
...