有没有办法通过实现 IDeref 在 cljs 中制作另一个容器,就像在 clojure 中一样?
(reify clojure.lang.IDeref
(deref [_] ...))
编译器警告 IDeref 不是协议(protocol)
最佳答案
试试这个:
(def a
(reify IDeref
(-deref [_] "Hello!")))
(.log js/console @a)
输出“你好!”。您可能想要使用 deftype:
(deftype LikeAtom []
IDeref
(-deref [_] "Hello!"))
(.log js/console @(LikeAtom.))
关于clojure - 如何在 clojurescript 中创建 IDerefable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20267970/