Ich möchte meine .cljs
Datei für beide Browser und node.js Umgebungen kompilieren, um serverseitige Rendering zu erhalten. Wie ich verstehe, gibt es keine Möglichkeit cljs env in der Kompilierung mit Lesern Makrobedingungen wie zu definieren:Wie definiert man target env in der Kompilierzeit beim Erstellen von .cljs?
#?(:clj ...)
#?(:cljs ...)
so, ich kann nicht einfach sagen, Compiler so etwas wie #?(:cljs-node ...)
in node.js env zu verarbeiten.
Die zweite Option, die ich hier sehe, besteht darin, eine Makrodatei zu entwickeln, die env zur Kompilierzeit definiert. Aber wie man diesen aktuellen Build definiert, richtet sich an node.js? Könnte ich irgendwie Params irgendwie zum Compiler übergeben oder :target
Compiler param bekommen?
Hier sind meine Boot-Dateien:
application.cljs.edn:
{:require [filemporium.client.core]
:init-fns [filemporium.client.core/init]}
application.node.cljs.edn:
{:require [filemporium.ssr.core]
:init-fns [filemporium.ssr.core/-main]
:compiler-options
{:preamble ["include.js"]
:target :nodejs
:optimizations :simple}}
versuchen http://clojureverse.org – jiyinyiyong