表明,内联DEF是一个合适的解决方案,但我无法使其起作用。在前端的电话发生后,VAR仍然没有绑定。
I通过VS Code + Calva启动了后端,并使用以下代码:(defn get-analytics-by-category [params]
(def params params)
...)
#object[clojure.lang.Var$Unbound 0x1298f89e "Unbound: #'urbest.db.queries/params"]
问题
为什么上述代码没有将参数的值绑定到VAR?还有另一个解决方案吗?
我发现的最好方法是使用
Scope-capture库。它通过在函数中添加1行捕获所有局部变量,然后使用另一个1线片将所有这些变量定义为全局,该变量允许您使用运行时值在函数中的任何子表达中进行评估。
Inline-DEF的问题可能是由于VAR绑定到值后的重新加载名称空间而引起的。重新启动VS代码并仔细地完成所有操作后,问题消失了。