2016-01-26 20 views
1

我一直在試圖學習如何正確調試ClojureScript。我很抱歉,如果這是一個小問題,也許它是如此小事,以至於沒有其他人需要問這個問題,但我無法在任何地方找到直接的答案。我已經按照這些安裝教程:如何在控制檯中顯示所有ClojureScript錯誤和輸出?

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

他們都建立了REPL了堅實的環境,但每當我執行任何代碼,輸出和(更重要的)錯誤總是在顯示repl而不是在控制檯中。我可以在控制檯中顯示的唯一東西是使用(enable-console-print!)的打印語句。

我希望所有東西都顯示在控制檯中,不管是什麼,以便我可以使用源圖來識別問題區域。

Thanks guys and gals!

+0

當Om Next即將成爲測試版時,第一個引用已過時,第二個引用爲Om。目前建立cljs開發環境的標準方法是使用Figwheel。例如見[這裏](http://stackoverflow.com/questions/34305235/how-to-set-up-the-configuration-in-cursive-for-clojurescript/34308150#34308150)。 –

回答

1

使用Figwheel https://github.com/bhauman/lein-figwheel

這是很容易設置和(在一個不顯眼的酥料餅和瀏覽器的控制檯/警告將顯示錯誤)不正是你想要的。當您保存文件時,Figwheel會重新載入您的代碼,我發現這比使用REPL更好。我做了一個簡短的視頻,展示了這種風格的工作流程:https://www.youtube.com/watch?v=pIiOgTwjbes。該視頻顯示了不同的調試場景,以及如何理解它們。如果有什麼不包括,請讓我知道!

+0

這與我在第二篇教程中使用的相似。我沒有正確說明;我真正想要的是repl評估,輸出和錯誤,都顯示在控制檯或網頁上。調試時尤其如此,以便我可以找到錯誤的來源。 – Phylth

+0

我覺得有必要補充說,這是一個超酷的vid你上傳,對初學者非常有幫助,對我來說,這對已經接管了一年並且沒有及時更新所有軟件包的人非常有幫助。 – Phylth

+0

謝謝!我明白你的意思了。這是一個合理的想法。可悲的是,我不知道有什麼方法可以得到它。你可以(嘗試(壞)(catch:default e(prn e))),但是它提供的信息根本不是很有用。我不使用REPL,而是在我的文件中保存表達式。 (prn(+ 1 2))在任何函數之外的文件中,立即進行評估並顯示在控制檯中。調試這很容易,因爲你得到的文件行號(REPL不能給你的)。對我來說這比REPL更好,REPL提供給我的東西(或者我錯過了很棒的東西?)。 –

相關問題