3 ms·
Yes, it is. You can just do (js/$ ".something") and you'll get jQuery object back.
by piranha 14y ago
Yes, it is. You can just do (js/$ ".something") and you'll get jQuery object back.
- pepijndevos 14y agoI think he meant the reverse. I know it is fairly doable in Clojure on the JVM, I assume ClojureScript is fairly similar. You have to use Var objects iirc.
- dribnet 14y agoAnd if you are lucky enough to be dealing with a functional javascript library like d3, you can even use cljs functions as arguments to your js library. This leads to very succinct and powerful interop. For example: (.timer js/d3 (fn [] (-> root (.selectAll "g") (.data curClockData) (.select "path") (.attr "class" #(str (:key %) (:which %)))) ; return false to keep running false)))) This snippet does this twice to provide a longish function to the d3.timer call and a small inline one to attr to set a class based on the data in the selection. More context available: http://bl.ocks.org/4326896 http://bl.ocks.org/4326896 ObTopic: cljs in cljs does sound dreamy. Would this also enable <script type="text/clojurescript">?
- swannodette 14y agoNice D3 example! I predict we will see an "official" CLJS-in-CLJS around the time of the next Clojure/conj ;)
- kanaka 14y agoAnd hopefully "unofficial" CLJS-in-CLJS by Clojure West. :-) I just pushed type/record/protocol/reify support. Next big thing is to fix runtime namespace creation. Then file I/O. Then all the bugs discovered while try to compile the compiler using the compiled compiler (i.e. self-hosting).