브라우저에서 Clojurescript 프로그램을 실행하고 있습니다.ClojureScript 평가. 호출 코드에 포함 된 라이브러리를 사용하는 방법
많은 라이브러리를 가져온 다음 사용자가 해당 라이브러리를 호출하는 작은 클로저 코드 "glue-code"를 입력 할 수있게하려고합니다.
네가 4 개의 인수를 가진 eval을 호출하는 것을 볼 수 있는데, 첫 번째는 원자 인 환경의 상태이다. 하지만 실제로 다른 곳에서 요구 한 모든 기능을 사용하여 현재 환경을 eval에 대한 적절한 인수로 바꿀 수 있습니까?
업데이트 : NS 세 번째의 opts -지도, 인수의 옵션을 :
나는 어쩌면 나는를 사용하여 평가에 대한 namesspace을 설정할 수 있다고 생각했다.
:ns "fig-pat.core"
하지만 차이 : 나는 내 응용 프로그램의 네임 스페이스로 설정합니다. 콘솔에서 찾고
는, 그것은 확실히는 평가를 수행하려고하는 경우, 그러나 평가 에드 코드에서 참조 이름이 인식되지 않는 불평 : 예를 들어
WARNING: Use of undeclared Var /square
. (평방 내가 필요 해요 함수는 응용 프로그램 자체, 즉 무화과 pat.core 네임 스페이스에 볼 수 있습니다..)
는 그때 얻을 : 나는이 실패를 믿고있어
SyntaxError: expected expression, got '.'[Learn More]
전체적으로 평가 된 표현.
업데이트 2 : 단지 전무를 인쇄 How can I get the Clojurescript namespace I am in from within a clojurescript program?
(println *ns*)
: 나는이 문제를 추측하고있어
실제로 관련이있을 수 있습니다. Clojurescript는 자체 네임 스페이스를 볼 수 없습니다.
그러면 : ns in eval이 작동하지 않습니까?