如何在 clojurescript 中使用构造函数声明 javascript 对象
How to declare javascript object with constructor in clojurescript
我的代码与领域库一起工作,有时它会调用领域构造函数:
(dependencies/realm. (clj->js options))
领域声明如下:
(def realm (js/require "realm"))
现在我想暂时模拟领域对象而不调用库。我试过这种方法:
(def realm #js {:schemaVersion (fn [])
:close (fn [])})
模拟 close() 和 schemaVersion() 函数效果很好,但我收到错误 dependencies.realm is not a constructor
。
如何将构造函数声明添加到领域对象占位符?
谢谢。
在javascript中,构造函数是一个函数。相反,你应该有一个函数 returns 一个对象:
(def realm (fn [] #js {}))
我假设 schemaVersion
和 close
是静态方法。您可以稍后添加它们:
(goog.object/extend realm #js {:schemaVersion (fn [])
:close (fn [])})
我的代码与领域库一起工作,有时它会调用领域构造函数:
(dependencies/realm. (clj->js options))
领域声明如下:
(def realm (js/require "realm"))
现在我想暂时模拟领域对象而不调用库。我试过这种方法:
(def realm #js {:schemaVersion (fn [])
:close (fn [])})
模拟 close() 和 schemaVersion() 函数效果很好,但我收到错误 dependencies.realm is not a constructor
。
如何将构造函数声明添加到领域对象占位符?
谢谢。
在javascript中,构造函数是一个函数。相反,你应该有一个函数 returns 一个对象:
(def realm (fn [] #js {}))
我假设 schemaVersion
和 close
是静态方法。您可以稍后添加它们:
(goog.object/extend realm #js {:schemaVersion (fn [])
:close (fn [])})