Clojurescript:从命名空间创建新对象

时间:2014-07-16 17:06:21

标签: clojurescript

我对ClojureScript比较陌生,之前从未使用类似lisp的语言,我必须说文档相当......缺乏。我只想将以下JavaScript语句转换为ClojureScript:

var obj = new namespace1.namespace2.SomeObject();

我知道您可以通过编写类似

的内容在cljs中创建对象的新实例
(SomeObject.)

但是尝试

(def obj (namespace1/namespace2/SomeObject.))

没编译。我应该做什么呢?

1 个答案:

答案 0 :(得分:2)

看看这个答案,这是完全相同的问题:

https://stackoverflow.com/a/23653459/1400662

粘贴在这里:

使用js / a.b.c.d是一种不好的做法,很可能会在未来版本的编译器中破坏(因为它不是我所知道的与cloopure兼容的互操作版本)

好方法是:

(def LatLng (.. js/google -maps -LatLng))

(LatLng. 100 100)