tRPC AppRouter 在使用 Turborepo 导入时被定义为“any”

bur*_*alc 9 typescript turborepo trpc.io

我目前正在使用带有 Turborepo 的 monorepo 将所有微服务代码存储在一个存储库中,每个存储库都有 apackage.json和 a tsconfig.json,所有这些代码都是用 Nodejs 编写的。

在每个中tsconfig.json,配置都是相同的

{
  "extends": "@tsconfig/node18-strictest-esm",
  "compilerOptions": {
    "outDir": "build",
    "baseUrl": ".",
    "paths": {
      "@/*": ["./*"],
      "@folder-a/*": ["./folder-a/*"], // masked
      "@folder-b/*": ["folder-b/*"] // masked
    }
  },
  "exclude": ["node_modules", "build"]
}
Run Code Online (Sandbox Code Playgroud)

我有一项服务A作为 tRPC 服务器,一项服务B作为 tRPC 客户端。

AppRouter当我导入from Ato的类型定义时,如果正确键入,B类型定义就会变为anyin 。BA

参考图片在这里。

我研究了一下并发现了类似的问题,看起来路径别名可能会导致这个问题。

有没有任何解决方案/替代原因