大家好,我正在尝试使用 Integrant 库进行状态管理。在管理(启动/停止)服务器方面相当直观,但我对某个具体用例感到困惑。
我想使用 Integrant 来创建和销毁一个对象。像我平时一样,我定义了 init-key
和 halt-key!
的 defmethods。问题是我希望从 init-key 获取初始化对象的引用。有没有什么习惯的做法来做这件事?我应该让它在 init-key 的一个原子中可用吗?
(defmethod ig/init-key :my-space/my-key [_ opts]
(let [account-id (:account-id opts)
license-key (:license-key opts)]
(MyObject. account-id license-key)))
;;How do I use the instantiated my object?