我對ReactJS非常有經驗,現在我正在嘗試學習ReasonML。但是我一直在努力去理解的一件事是如何用React/Reason導入npm包。如何在RationalML中使用npm包?
網站上的說明有點不清楚(https://reasonml.github.io/guide/javascript/interop/)。
所以,如果我有一個React/Reason項目並且想要使用一個npm包,我該怎麼做呢?如何使用Reason lang導入它?
我對ReactJS非常有經驗,現在我正在嘗試學習ReasonML。但是我一直在努力去理解的一件事是如何用React/Reason導入npm包。如何在RationalML中使用npm包?
網站上的說明有點不清楚(https://reasonml.github.io/guide/javascript/interop/)。
所以,如果我有一個React/Reason項目並且想要使用一個npm包,我該怎麼做呢?如何使用Reason lang導入它?
首先,感謝您的反饋!我會確保讓這個改進。
現在,爲了能夠使用在npm上發佈的JavaScript庫,您需要爲它找到或作一些綁定,作爲Reason/BuckleScript和JavaScript之間的橋樑。理想情況下,您需要的綁定已經被寫入(或生成)併發布到npm,但是如果沒有,您必須自己編寫它們。
最容易找到的綁定列在reasonml-community index中,並將包含如何使用它的說明。但是,如果他們不這樣做,那麼您需要像往常一樣運行npm install --save <package-name>
,然後在bsconfig.json
(另請參閱BuckleScript manual)中將程序包名稱添加到bs-dependencies
陣列中。確保運行bsb -make-world
以建立新的依賴關係,那麼您應該能夠直接使用綁定導出的模塊。
如果沒有綁定,並且您想自己創建,那麼您只需要使用npm install --save <pacakge-name>
就可以正常添加javascript包,然後就可以開始編寫外部代碼。 BuckleScript manual中描述瞭如何執行此操作。您也可能會發現我的FFI cheatsheet有用。
最後,歡迎您加入我們our Discord,那裏有很多熱心人幫忙!
需要在將軟件包添加到'bs-dependencies'和使用'bsb -make-world'之間添加一個更明確的步驟。 – Yawar