簡體   English   中英

如果我只是編寫clojurescript實用程序功能,是否需要cljsbuild插件?

[英]Do I need cljsbuild plugin if I am just writing clojurescript utility functions?

我是Clojurescript的初學者,我對此表示懷疑。 現在,我只是在CLJS文件中編寫了一堆實用程序函數,這些函數將在其他CLJS項目中使用。

所以我仍然需要使用cljsbuild插件將CLJS文件編譯為JS嗎? 如果沒有,如何仍然編譯我的CLJS源文件以檢查錯誤和全部?

首先,我建議您運行CLJS REPL。 一種選擇是使用啟動cljs。 在此處進行設置的說明https://github.com/adzerk-oss/boot-cljs-repl

或者,如果您的函數是簡單函數或純函數,並且沒有外部依賴性,則可以嘗試使用瀏覽器REPL,例如http://clojurescript.io

無論哪種方式,您都可以將函數粘貼到REPL中並對其進行測試。 您將獲得即時反饋。 那應該讓您開始。 稍后,您可以添加測試基礎結構以自動化測試。 玩得開心!

當ClojureScript項目依賴於庫中的ClojureScript代碼時,它直接依賴於庫的ClojureScript源代碼。 (出於依賴性的目的,無需將該庫的代碼編譯為JavaScript,實際上,該模型實際上不受支持。)

ClojureScript項目如何依賴ClojureScript庫的代碼? 通常,庫的代碼放在JAR中,而JAR放在項目的Java類路徑中。 (通常將此類JAR部署到Clojars或Maven Central。)

使用deps.edn更新,更靈活的替代方法是讓ClojureScript項目依賴於JAR(如上段所述),或者直接依賴於磁盤上庫的本地路徑(使用:local/root )或庫的GitHub源(使用:git/url:sha )。

要在本地編譯和測試代碼,可以使用cljs.main將代碼加載到REPL中並執行。 這通常可以像設置deps.edn然后運行那樣簡單

clj -m cljs.main

然后使用(require my-ns.core)將名稱空間加載到REPL中。 快速入門指南非常值得一讀。

您可以使用cljs.main來運行其基於cljs.test的測試。 這里是使用Node運行此類測試的示例。

還有其他更復雜,功能更豐富的選項可用於編譯和測試ClojureScript庫代碼。 上面介紹了ClojureScript本身附帶的一些較簡單的選項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM