如何打包Flow typedef并避免重复的软件包之间发生冲突?

问题描述

我有一对我维护的库,每个库都在应用程序中使用(如dependencies)。其中一个库将另一个库作为dep,因此dependencies图如下所示:

App
└─ LibOne
└─ LibTwo
   └─ LibOne

我使用flow-copy-source在每个库中提供libdef。

App阻止了一系列Flow错误,因为它发现了LibOne的重复typedef:App创建了一个类型为App > LibOne的对象,然后将其传递给方法LibTwo上接受LibTwo > LibOne类型的参数。我本以为npm会重复安装LibOne的重复数据,但是这种结构不会发生这种情况。

如何将我的typedef与我的库捆绑在一起,而不会遇到这种重复的typedef场景?

我发现我可以在.flowconfig添加一个别名来解决此问题:

module.name_mapper='^lib-one$' -> '<PROJECT_ROOT>/node_modules/lib-one'

...但是由于某些原因,我将不去讨论(公司monorepo限制),所以我无法修改.flowconfig,因此我需要找到一种如何捆绑类型的解决方案,以便能够重复数据删除

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)