我有具有以下文件结构的 monorepo( yarn 工作区):
├── client (workspace @client)
│ ├── package.json
│ └── tsconfig.json (extended tsconfig)
├── server (workspace @server)
│ ├── getData.ts
│ ├── package.json
│ └── tsconfig.json (extended tsconfig)
├── shared
│ └── sanitizeData.ts
├── package.json (monorepo root)
└── tsconfig.json (base tsconfig)
我想使用
shared/sanitizeData.ts
中的函数在 server/getData.ts
我尝试使用
paths
来自 Typescript,根据文档,它看起来很简单,但我做错了:error TS2307: Cannot find module '@shared/sanitizeData'.
server/tsconfig.json
:{
"extends": "../tsconfig.json",
"compilerOptions": {
"baseUrl": ".",
"rootDir": "../",
"outDir": "build",
"paths": {
"@shared/*": ["shared/*"]
}
}
}
server/getData.js
:import { sanitizeData } from "@shared/sanitizeData";
请问你能帮帮我吗?
最佳答案
路径相对于 baseUrl
,因此在您的情况下,您必须替换 ["shared/*"]
与 ["../shared/*"]
关于javascript - 带有来自 Typescript 的路径的 Monorepo 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58554760/