我无法在纱线工作区设置中使路径映射在两个不同的打字稿项目之间工作。
我在纱线工作区中有2个不同的项目。因此文件夹结构如下所示。
packages
├── common
│ ├── node_modules
│ ├── package.json
│ ├── src
│ │ └── logger.ts
│ └── tsconfig.json
├── main
│ ├── node_modules
│ ├── package.json
│ ├── src
│ │ ├── app
│ │ │ └── settings.ts
│ │ └── main.ts
│ └── tsconfig.json
tsconfig.base.json
node_modules
在我的/ main的tsconfig中,我有
"baseUrl": ".",
"paths": {
"Common/*": ["../common/src/*"]
},
"references": [
{ "path": "../common","prepend": true }
]
在main / src / main.ts中,我试图像这样从模块导入默认导出
import Log from 'Common/logger'
但是我得到了错误:
TS2307:找不到模块
这不是我使用打字稿时遇到的问题,所以我想知道问题是否与我试图映射的路径也被用作项目参考有关。
我希望它能像往常一样工作,能够将../common/src/logger
导入为Common/logger
。
答案 0 :(得分:0)
因此,在这种情况下的问题原来是我是从tsconfig.base.json
扩展而来的, "paths": {
"Common/*": ["./packages/common/src/*"]
}
中没有设置关键的“路径”。基本上,tsconfig文件中的继承工作与oop中的工作完全相同,而我试图覆盖基本配置中不存在的字段。
解决方法是简单地添加
tsconfig.base.json
在binascii.b2a_hex
内部,一切正常。