我想做一些类似于 Reagent form-3 组件的事情,这使我能够定义一些共享(静态)变量以在生命周期函数中使用。
基本上我的问题是如何构造与let
下面的试剂代码片段中的等效的东西?我似乎无法弄清楚如何使用 Om 的defui
宏正确执行此操作。
一个简单的例子是生成一个内部 id,我可以在我的组件的特定实例的所有生命周期函数中通过gdom/getElement
.
(defn my-component
[x y z]
(let [id (gensym "my-component-")] ;; <-- how to do this in Om?
(reagent/create-class
{:component-did-mount (...)
:component-will-mount (...)
:reagent-render
(fn [x y z] (js/console.log id)))) ;; <-- id is available