如何在 shadow-cljs 中管理静态文件?

How to manage static files in shadow-cljs?

例如,我有一个index.html项目。

我希望每当我构建项目时,它都会自动复制到 public 项目中。是否有内置方法可以实现此目的?

有一个 built-in hook 可以复制(并可能修改)一个 HTML 文件。

可以通过

在您的构建配置中进行配置
:build-hooks
[(shadow.html/copy-file "src/html/index.html" "public/index.html")]

所有路径都是相对于项目根目录的。这只复制指定的文件,没有别的。您可以编写自己的挂钩来复制更多文件,或者只使用单独的命令手动复制文件。

我通常只是从一开始就将所有文件放在它们的“最终”位置,并且只有一个 public/js 文件夹左右 git-忽略我可以删除并重新创建当我构建我的 CLJS 时。这样一开始就不需要复制任何东西。 ;)