使用不同的React版本与clojurescript反应库(试剂,om,朗姆酒,静止)

使用不同的React版本与clojurescript反应库(试剂,om,朗姆酒,静止)

问题描述:

我如何使用Reagent,Om,Rum,Quiescent或Brutha的不同React版本?因为这使用不同的React版本与clojurescript反应库(试剂,om,朗姆酒,静止)

自我回答经常问:

首先你要告诉Leiningen排除cljsjs/react依赖:如果您有其他依赖于cljsjs/react拉着你可以使用全局排除

[rum "0.6.0" :exclusions [[cljsjs/react] [cljsjs/react-dom]]] 

:exclusions [[cljsjs/react] [cljsjs/react-dom]] 

接下来,您必须满足编译器,因为它不会找到名称空间cljsjs.reactcljsjs.react.dom。为此,创建两个文件,将这些名称空间保存在源目录中。例如

- src/cljsjs/react.cljs 
- src/cljsjs/react/dom.cljs 

两者只需要命名空间声明,否则会是空的(ns cljsjs.react)

现在您可以使用标准<script>标记在HTML文件中手动添加您想要的任何React版本。

备选:

您还可以使用foreign-libs compiler option