【问题标题】:How to show all ClojureScript errors and output in console?如何在控制台中显示所有 ClojureScript 错误和输出?
【发布时间】:2016-05-03 17:44:17
【问题描述】:

我一直在尝试学习如何正确调试 ClojureScript。如果这是一个菜鸟问题,我很抱歉,也许它太菜鸟以至于没有其他人需要问它,但我在任何地方都找不到直接的答案。我遵循了这些设置教程:

https://github.com/shaunlebron/How-To-Debug-CLJS http://teamcoding.com/blog/2015/03/10/clojurescript/

他们都使用 repl 设置了一个可靠的环境,但是每当我执行任何代码时,输​​出和(更重要的是)错误总是显示在 repl 而不是控制台中。我唯一能在控制台中显示的是使用(enable-console-print!) 的打印语句。

无论如何,我希望所有内容都显示在控制台中,以便我可以使用源映射来识别问题区域。

谢谢大家!

【问题讨论】:

  • 第一个引用已经过时,第二个是 Om Next 即将成为 beta 版本的 Om。当前设置 cljs 开发环境的标准方法是使用 Figwheel。例如见here

标签: javascript debugging clojurescript read-eval-print-loop


【解决方案1】:

使用无花果https://github.com/bhauman/lein-figwheel

它很容易设置并且完全符合您的要求(错误/警告将显示在谨慎的弹出窗口和浏览器的控制台中)。 Figwheel 会在您保存文件时重新加载您的代码,我发现这比使用 REPL 的工作流程要好得多。我制作了一个简短的视频来展示这种工作流程:https://www.youtube.com/watch?v=pIiOgTwjbes。该视频展示了许多不同的调试场景,以及如何理解它们。如果有什么不明白的,请告诉我!

【讨论】:

  • 这类似于我在链接的第二个教程中使用的。我没有正确指定;我真正想要的是 repl 评估,包括输出和错误,显示在控制台或网页本身上。对于调试尤其如此,这样我就可以找到错误的根源。
  • 我觉得有必要补充一下,这是您上传的超级酷的视频,对初学者很有帮助,就我而言,对那些已经工作一年多但还没有更新的人很有帮助所有的包。
  • 谢谢!我明白你的意思了。想要是合情合理的。可悲的是我不知道有什么方法可以得到它。你可以 (try (bad) (catch :default e (prn e))),但它提供的信息根本不是很有用。我没有使用 REPL,而是将表达式保存在我的文件中。 (prn (+ 1 2)) 在任何函数之外的文件中,立即进行评估并显示在控制台中。调试它要容易得多,因为您可以获得文件行号(REPL 不能给您)。对我来说,这比 REPL 更好,REPL 没有给我任何东西(或者我错过了一些很棒的东西?)。
猜你喜欢
  • 2020-11-10
  • 1970-01-01
  • 2012-12-13
  • 2023-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-03
  • 1970-01-01
相关资源
最近更新 更多