在更大的打字稿项目上工作时,我们决定将代码移动到具有纱线工作空间的monorepo。
我们使用 webpack 进行构建和捆绑,一切运行良好(尤其是本地模块/包之间的链接)。
由于纱线工作区将大部分node_modules存储在mono repo的根文件夹中,因此IDE(IntelliJ以及VSCode)在内部"内部编码时解析导入到任何node_modules的问题&# 34;项目(所谓的"包" monorepo)。
奇怪的是,导入是未知的,但另一方面,如果您手动将其导入,大部分时间您可以在IDE中导航到相同导入的正确源/定义。
我们试图告诉IntelliJ查看node_modules的另一个文件夹,但仍然不满意。
请分享您对纱线工作区/ monorepo (例如lerna)的体验,以及您如何开发生活在这些单一场景中的代码。
你使用哪个IDE?
您是否向IDE和/或package.json,tsconfig.json添加了任何特殊配置?
答案 0 :(得分:3)
IDEA不为纱线工作空间提供任何支持;如果您错过了,请按照WEB-29250和链接的门票进行更新。
您可以尝试向tsconfig.json
添加路径映射 - 请参阅https://intellij-support.jetbrains.com/hc/en-us/community/posts/207656825/comments/115000529564
答案 1 :(得分:2)
自2018.1.1起,Upodate现已支持IntelliJ工作区,因此如果使用它,应该没有问题。
https://blog.jetbrains.com/webstorm/2018/04/webstorm-2018-1-1/
答案 2 :(得分:1)
请分享您对纱线工作区/ monorepo(例如lerna)的体验,以及您如何开发生活在这些单一场景中的代码。
你使用哪个IDE?
既然你在问。我基本上遇到了和你一样的问题。我正在研究的一个解决方案是disable hoisting node modules as described here。不幸的是,它似乎还没有稳定发布。
我最终得到的是现在,直到他们修复IDE或发布nohoist选项。相反,我现在正在使用lerna。它不太方便,但它不会提升,因此构建工具和IDE都得到满足。
哦,我也在使用IntelliJ(终极版)
答案 3 :(得分:0)
https://github.com/Izhaki/mono.ts
它使用毛线工作区并与VSCode完美结合。我希望自述文件足够清楚。
基本上,使用两个(并行)打字稿配置树: