web-dev-qa-db-ja.com

Typescript:Yarn Workspaces IDE Support(IntelliJ、VSCode ...)

より大きなTypeScriptプロジェクトで作業しているので、コードをyarnワークスペースのモノリポジトリに移動することにしました。

webpackを使用してビルドとバンドルを行い、すべてがうまく機能します(特にローカルモジュール/パッケージ間のリンク)。

ヤーンワークスペースはほとんどのnode_modulesをモノレポのルートフォルダーに保存するため、IDE(IntelliJおよびVSCode)は、「内部」プロジェクト内でコーディングするときにnode_modulesへのインポートを解決する際に問題が発生します(モノレポのいわゆる「パッケージ」)。

奇妙なことに、インポートは不明ですが、一方で、手動で書き留めておけば、ほとんどの場合、同じインポートのIDE内の正しいソース/定義に移動できます。

IntelliJにnode_modulesの別のフォルダーを調べるように指示しようとしましたが、それでも満足できません。

お願いしますyarnワークスペース/ monorepoでの経験を共有してください(例:lerna)そしてこれらのmonoreposに存在するコードをどのように開発するか。

どのIDEを使用しますか?

IDEおよび/またはpackage.json、tsconfig.jsonに特別な構成を追加しましたか?

14

https://github.com/Izhaki/mono.ts

ヤーンワークスペースを使用し、VSCodeとうまく連携します。 READMEが十分に明確であることを願っています。

基本的に、2つの(並列の)TypeScript構成ツリーを使用します。

  • Pre-build-エイリアスを使用します(VSCode、テスト、webpackなど)。
  • Build-基本的に公開にTypeScript3プロジェクト参照を使用します。
3
Izhaki

IDEAはYarnワークスペースのサポートを提供していません。見逃した場合は、 WEB-2925 およびリンクされたチケットをフォローして更新してください。 tsconfig.jsonにパスマッピングを追加してみてください https://intellij-support.jetbrains.com/hc/en-us/community/posts/207656825/comments/115000529564 を参照してください

3
lena

2018.1.1以降の更新IntelliJはyarnワークスペースをサポートするようになったため、これを使用しても問題はありません。

https://blog.jetbrains.com/webstorm/2018/04/webstorm-2018-1-1/

2
Lukas

ヤーンワークスペース/モノレポ(例:lerna)での経験と、これらのモノレポに存在するコードを開発する方法を共有してください。

どのIDEを使用しますか?

あなたが求めているので。私は基本的にあなたと同じ問題に遭遇しました。私が調べていた解決策の1つは、 ここで説明するようにノードモジュールの巻き上げを無効にする でした。残念ながら、まだ安定版リリースにはなっていないようです。

私が最終的に行ったのは、ワークスペースを今のところで、IDE)を修正するか、nohoistオプションを解放するまでです。代わりにI今のところ lerna を使用しています。あまり便利ではありませんが、ビルドツールとIDEの両方が満たされるように吊り上げられていません。

ああ、私もIntelliJ(究極)を使っています

1
Lukas