9

私のclojurescriptコードには次のものがあります:

(defn onload [] (repl/connect "http://localhost:9000/repl"))

(set! (.-onload js/window) onload)

Clojurescript の repl は開発では非常に便利ですが、本番環境でコードに残すのはためらいがあります。上記のコードを開発中に存在させ (単純なコンパイル)、本番中には存在させない (高度なコンパイル) ための最もクリーンな方法は何ですか?

4

3 に答える 3

3

残念ながら、現在、ClojureScript で条件付きコンパイルを行う明確に定義された方法はありません。

さまざまな方法で REPL を開始するかどうかを制御する構成変数を追加できますが、1 つの迅速で簡単な方法は、現在のページのホスト名を取得し、repl/connnectそれが「localhost」またはその他のドメインである場合にのみ呼び出すことです。開発作業に再利用します。

于 2012-10-14T17:46:19.607 に答える
1

lein2 プロファイルと cljsbuild src-paths munging の組み合わせがうまくいくと思います。たとえば、単純に repl をロードする名前空間を作成し、最終的なコンパイルのために実行するプロファイルでそれを除外します (別の src-path ディレクトリにダミーの名前空間を作成する必要がある場合があります)。

于 2013-02-07T16:13:57.647 に答える