我正在与一个庞大的团队一起进行一个庞大的React项目,并且编译时间为10秒钟以上,所以我制作了自己的react应用并在其中构建组件,并在完成后将其复制。此方法可行,但手动复制组件非常繁琐且容易出错。
我尝试使用符号链接,结果发现它无法编译。经过一些研究,我发现react不允许从src文件夹外部导入。
我尝试在一个单独的分支上执行此操作,并绕过大部分代码库,只是做我自己的事情,但这涉及更改其他人的 代码,但切勿在推送自己的代码时推送它们,这也容易出错。
这是一台管理严格的计算机,我无法使用Dropbox或Google云端硬盘,也无法发布到npm,并且我的组件始终无法发布。
执行此操作的最佳方法是什么?谢谢!
答案 0 :(得分:2)
目前尚无最佳方法,但这是一个常见问题,有多种解决方案:
注意:您无需连接到公共npm注册表即可获得类似npm的体验。
1)通过yarn workspaces
创建一个“ monorepo”将您的React组件的开发与同一存储库中的其他“模块”分开。您可以像使用npm软件包一样获得版本控制的所有好处,但是它们都在同一个项目文件夹中。假设您要在某个分支feature/fancyComponent
上创建一个新组件。另一位开发人员可以检出该分支并导入您的组件,就像它是安装在node_modules
文件夹中的软件包一样。{ {1}}
2)使用npm注册表代理verdaccio
根据需要使用许多存储库,而不是monorepo,然后将组件发布到本地npm注册表。您可以进行设置,以便在import FancyComponent from 'react-components/FancyComponent'
时先查看您的本地注册表,然后回退到npm。