打字稿:Yarn Workspaces IDE支持(IntelliJ,VSCode ......)

时间:2017-11-16 19:11:28

标签: intellij-idea ide visual-studio-code yarnpkg monorepo

在更大的打字稿项目上工作时,我们决定将代码移动到具有纱线工作空间的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添加了任何特殊配置?

4 个答案:

答案 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完美结合。我希望自述文件足够清楚。

基本上,使用两个(并行)打字稿配置树:

  • 预构建-使用别名(用于VSCode,测试,Webpack等)。
  • 构建-本质上使用打字稿3项目参考进行发布。