【发布时间】:2021-04-13 10:20:57
【问题描述】:
问题
我的 Web 前端调用具有复杂参数的后端查询。在开发过程中,为了避免耗时的手动复制这些参数,我想在 Vars 中捕获它们的值,以便在 REPL 中使用。
研究
这个article 表明内联def 是一个合适的解决方案,但我无法让它工作。来自前端的调用发生后,Var 仍然未绑定。
我通过 VS Code + Calva 使用 REPL 启动了后端,代码如下:
(defn get-analytics-by-category [params]
(def params params)
...)
这是 REPL 中 Var 的评估:
#object[clojure.lang.Var$Unbound 0x1298f89e "Unbound: #'urbest.db.queries/params"]
问题
为什么上面的代码没有将参数的值绑定到 Var?还有其他解决方案吗?
【问题讨论】:
-
尝试添加带有 arg 值的
println以验证函数正在被调用,并且您正在从前端获取预期值。 -
@AlanThompson,已经尝试过
println,函数按预期调用。 -
如何定义一个带有公共静态字段的自定义 Java 类,您可以将值放入以后读取它?
标签: debugging clojure inline read-eval-print-loop vscode-calva