![](/img/trans.png)
[英]Calling JavaScript object property as a constructor from ClojureScript
[英]How to declare javascript object with constructor in clojurescript
我的代码与领域库一起使用,并在某些时候调用领域构造器:
(dependencies/realm. (clj->js options))
Realm的声明如下:
(def realm (js/require "realm"))
现在,我想临时模拟领域对象,以不调用库。 我尝试了这种方法:
(def realm #js {:schemaVersion (fn [])
:close (fn [])})
它对于模拟close()和schemaVersion()函数效果很好,但是我遇到了错误dependencies.realm is not a constructor
。realm dependencies.realm is not a constructor
。
如何将构造函数声明添加到领域对象占位符?
谢谢。
在javascript中,构造函数是一个函数。 相反,您应该具有一个返回对象的函数:
(def realm (fn [] #js {}))
我假设schemaVersion
和close
是静态方法。 您可以稍后添加它们:
(goog.object/extend realm #js {:schemaVersion (fn [])
:close (fn [])})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.