2012-10-14 2 views
9

나는 다음과 같습니다Clojurescript repl/connect를 프로덕션 환경에서 컴파일하지 마십시오. 내 clojurescript 코드에서

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

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

Clojurescript의 REPL 개발에 매우 ​​유용하지만, 내가 제작하는 동안 코드에두고 주저입니다. 위의 코드를 개발하는 동안 (간단한 컴파일), 생산 중에는 없어도 가장 깨끗한 방법은 무엇입니까 (고급 컴파일)?

답변

3

현재 ClojureScript에서 조건부 컴파일을 수행하는 방법은 잘 정의되어 있지 않습니다.

REPL을 다양한 방법으로 시작할지 여부를 제어하기 위해 구성 변수를 추가 할 수 있지만 "localhost"또는 "localhost"인 경우 repl/connnect 만 호출하면 쉽고 빠르게 현재 페이지의 호스트 이름을 가져올 수 있습니다. 개발 작업에 사용하는 다른 모든 도메인.

+0

큰 소리로 생각해 보면 repl/connect를위한 모든 코드도 내 프로덕션 코드로 컴파일된다는 것을 의미합니다. 솔직히 컴파일 된 세그먼트가 얼마나 큰지 전혀 알지 못한다. –

1

나는 lein2 프로필과 cljsbuild src-paths munging의 조합이 트릭을 수행 할 수 있다고 생각합니다. 예를 들어 단순히 repl을로드하는 네임 스페이스를 만들고 최종 컴파일을 위해 프로필을 실행하여 네임 스페이스를 제외합니다 (다른 src-path 디렉토리에 더미 네임 스페이스를 만들어야 할 수도 있음).

7

자습서는 실제로 here을 해결하는 방법을 정확하게 설명합니다.

희망 하시겠습니까?

관련 문제