在Monorepo中的两个项目之间共享打字稿代码(与本地相同)

时间:2019-10-17 14:31:16

标签: lerna monorepo yarn-workspaces

我一直在尝试在两个存储库之间共享代码,所以我了解使用lerna&yarn工作区的monorepo方法。

但是举这个例子: 可以说我在monorepo中有2个React项目。他们共享代码,可以说他们共享:

components, utils, modules, redux reducers/actions

为什么我不能创建“共享文件夹”,然后像在本地一样导入这些模块。

import LoginComponent from '@shared/components/login/LoginComponent'


据我了解,不可能像上述那样吗?当您由于导入@shared存储库而丢失文件夹结构时,必须将所有内容导出到索引中

所以我想我可以在@shared/*的根处添加一个package.json,但是那时我只有一层结构目录。

不能简单地从Monorepo中的项目之间的共享目录中导入似乎有点奇怪?这是出于任何原因还是我错过了什么?

或者导入如下代码有什么问题

import LoginComponent from '../../../shared/components/login/LoginComponent'

共享位置将在/packages

之内

1 个答案:

答案 0 :(得分:0)

您实际上可以做到。我已经完成了React Typescript项目。您可以在此处检查此实现。 http://devwithabhi.com/setting-up-react-typescript-monorepo-with-lerna/