Clojure 试剂不注册原子表

Clojure 试剂不注册原子表,clojure,reactjs,clojurescript,reagent,Clojure,Reactjs,Clojurescript,Reagent,我有简单的新来者申请表。 我定义了一些组件定义: (def md-vals (atom nil)) (defn markdown [url] (GET (str js/context url) {:handler (fn [response] (swap! md-vals assoc url response) (js/alert (str "loaded\n" (subs response 1 100))))}) (fn [] [

我有简单的新来者申请表。 我定义了一些组件定义:

(def md-vals (atom nil))

(defn markdown [url]
  (GET
    (str js/context url)
    {:handler
     (fn [response]
       (swap! md-vals assoc url response)
       (js/alert (str "loaded\n" (subs response 1 100))))})
  (fn [] [:p (get @md-vals url "loading...")]))
它作为页面组件的用法:

(defn docs [] [markdown "/md/docs.md"])
最后是页面绑定:

(defn init! []
  ...
  (render-component (docs)  (.getElementById js.document "docs")))
除atom状态切换通知外,所有操作都正常。在成功获取资源时,我看到了假定的
警报
消息,但页面的相应区域没有切换

Chrome调试器显示,在atom切换时,atom的
watchs
属性为空(
null
),因此不会触发任何通知


我的方法可能有什么错误?

您应该使用
试剂.core/atom
而不是常规的Clojure
atom
。将此添加到命名空间
:require

[试剂芯:作为试剂:参考[原子]]

您使用的是
试剂芯/atom
还是纯Clojure
atom
?请发布您的名称空间声明。@sbensu谢谢!它当然是内置的原子,没有试剂参考。请你描述一下这个模棱两可的回答,以便接受。谢谢!这帮了大忙。