3

情况就是这样。我正在使用 Nrwl NX Monorepo。我有 2 个库 lib-a 和 lib-b 都是通过 NX 创建的可发布库。现在我在 lib-a 中创建了一个 MyClass.ts。自然地,在workspace/tsconfig.json 路径下,NX 会为此lib-a 创建一个别名(“@workspace/lib-a”:[“libs/lib-a/src/index.ts”])。到目前为止,一切都很好。现在我们可以在工作空间/monorepo 中的任何地方使用这个类,方法是将它导入 "import { MyClass } from '@workspace/lib-a';

不幸的是,我们无法构建导入 MyClass 的 lib-b。当我们尝试这样做时,我们会收到以下错误。所以问题是我们如何构建 lib-b ?

PS NX monorepo 实际上不支持链接 2 个可发布库的这种常见场景,这似乎很奇怪。

“错误 TS6059:文件“d:/workspace/libs/lib-a/src/index.ts”不在“rootDir”下“d:\workspace\libs\lib-b\src”rootDir 应包含所有源文件”

4

1 回答 1

0

尝试添加

"paths": { "@workspace/*": ["dist/libs/*"] }

进入您的 tsconfig.lib.json 文件。这应该可以解决问题。

于 2020-09-02T12:22:46.303 回答