我已经使用figwheel-main进行React Native开发很长时间(大约从2016年开始)并且我对它总体上非常满意。
截至去年,npm包的支持也非常完美。你可以使用“yarn add @tensorflow/tfjs”。然后简单添加一个require如下
["@tensorflow/tfjs" :as tfjs]
... 然后一切就会正常工作(至少在React Native + CLJS上是这样。我最近没有做过基于浏览器的CLJS项目,但我假设这应该是一样的)。
React Native使用自己的打包器(称为metro),你必须使用它,因此在使用React Native时,你无法避免使用额外的工具。在这个方面,我会提供一个小建议:如果你要使用JavaScript包,使用“yarn”而不是“npm”。这应该适用于浏览器和React Native开发。多年来,我使用yarn的经验质量更高。我遇到了很多因为npm而浪费的半天时间。关于yarn,我记不起有任何重大问题。
我没有自己使用过shadow-cljs,但thheller一直是Clojure社区中的一个超级有用和知识渊博的参与者。所以我推测工具的质量也很高,我 heard 来自使用shadow-cljs的人的好评。