Typescript Project References 通用依赖参考

Typescript Project References common dependency reference

这基本上是我的 https://github.com/RyanCavanaugh/project-references-demo/issues/10 的转贴,以防繁忙的维护者无法发表评论。

关于如何正确有效地使用 Typescript Project References,网络上似乎仍然存在很多困惑,尤其是在 monorepo 场景中。我正在尝试 assemble 我自己的这样一个原型,我 运行 遇到了让构建工作的问题。

我认为@RyanCavanaugh 的例子是最好的参考。我很惊讶地发现我通过简单地添加一个共享引用得到了构建错误。也许我只是犯了个傻mistake/omission?

我从他的动物园示例开始,该示例引用了 zoo -> animals -> core,我只是直接从 zoo -> core 添加了一个引用。但是随后 npm build 会产生许多错误,从以下内容开始:

animals/index.ts:1:20 - error TS6059: File 'C:/code/project-references-demo/animals/animal.ts' is not under 'rootDir' 'C:/code/project-references-demo/zoo'. 'rootDir' is expected to contain all source files.

| import Animal from './animal';

我错过了什么?

修复截图:

{
  "extends": "../tsconfig-base.json",
  "compilerOptions": {
    "outDir": "../lib/zoo",
    "rootDir": "."
  },
  "references": [
    {
      "path": "../animals",
      
    },
    {
      "path": "../core"
    }
  ]
}