我正在开发一个用Typescript编写的独立程序包A,它依赖于某些节点程序包,尤其是程序包C。因此,它具有自己的package.json和node_modules。该软件包已完全构建。
我现在正面临将软件包A导入另一个也具有一些依赖性的软件包B的问题,尤其是软件包C。
- A (depends on C)
- node_modules
- C
...
- package.json
...
- B (depends on C)
- node_modules
- C
...
- package.json
...
- C (third-party package, eg. mathjs)
我通过添加一个指向tsconfig.json的路径来做到这一点,该路径指向软件包A的源。问题是,每当我将A导入B时,A和B都混合使用了node_modules。因此,C被两次导入,并且在这两次C导入中,C的类型分别被认为是两种不同的类型。
包括本地TS-package而不加倍常见第三方依赖性的最佳实践是什么?