如何最方便地将状态注入环处理程序(不使用全局变量)?
这是一个例子:
(defroutes main-routes
(GET "/api/fu" [] (rest-of-the-app the-state)))
(def app
(-> (handler/api main-routes)))
我想the-state
进入main-routes
. 状态可能类似于使用以下内容创建的地图:
(defn create-app-state []
{:db (connect-to-db)
:log (create-log)})
在非环形应用程序中,我将在主函数中创建状态并开始将其或其中的一部分作为函数参数注入到应用程序的不同组件中。
:init
可以在不使用全局变量的情况下用环的功能完成类似的事情吗?