嗨,大家好,我正在尝试使用Integrant库进行状态管理。在管理(启动/停止)服务器方面,它的使用相当直观,但我对某个特定用例感到困惑。
我希望使用Integrant创建和销毁一个对象。像往常一样,我定义了defmethods init-key
和halt-key!
。问题是,我想要从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?