重新构建,试剂组件生命周期和图形

时间:2015-10-27 18:09:51

标签: reagent figwheel re-frame

我试图同时学习很多东西,所以我的问题可能有点偏离目标。

我用lein创建了一个重新框架模板项目,我有我的默认主要组件:

(defn main-panel []
  (let [name (subscribe [:name])]
    (fn [] [:div [:h1 @name]])))

我想为keypress添加一个事件监听器,但我无法正确设置:如果我只设置(使用domina)(listen! ...)中的:component-did-mount, figwheel重新加载一个新的偶数监听器被添加到旧的一个(s)。如果我在unlisten!中设置component-will-unmount,则无法在按键上获得结果。

我注意到,在每次重新加载的情况下,:component-will-unmount之后立即触发:component-did-mount

我做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

好的,我发现了自己的错误。 我不得不称之为反应"方法"与with-meta

所以,例如:

(with-meta myComponent {:component-did-mount #(ev/listen! ...)
                        :component-will-unmount #(ev/unlisten! ...)})