使用带有打字稿的特定文件夹中的@types

Using @types from specific folders with typescript

我们有一个使用 Lerna 的 monorepo,包 a 和包 b 都包含 @types/react.

包 A 有包 B 作为依赖,所以我最终得到这个:

套餐A: node_modules/PackageB/node_modules/@types

这会导致大量重复错误。

我们不使用任何工作区(到目前为止),我们使用 NPM。当使用 TSC 编译时(用于类型检查),它会抛出大量关于重复包和缺失包的错误。

我希望 tsconfig 可以指定我要使用的类型文件夹? 因此,它不是只抓取所有这些,而是​​只抓取 node_modules/@types 而不是嵌套的?

我尝试过使用 typesRoot、类型和路径。都无济于事。目前我们正在使用 skipLibCheck,但它并不理想。

每个包都应该依赖于反应类型(不要使用文件路径!),lerna bootstrap used with the --hoist flag will wire them up without duplication. You will probably want to also use the --strict flag这将确保您保持依赖版本一致。