查找纱线工作空间之间的跨包依赖关系

Rom*_*nov 7 typescript yarnpkg

使多模块TypeScript代码库生活在monorepo中并使用纱线工作区链接在一起.Root package.json将每个模块声明为工作空间和依赖项.

  {
    ...
    "workspaces": [
      "mod1",
      "mod2",
      "mod3",
      "mod4"
    ],
    "dependencies": {
      "mod1": "*",
      "mod2": "*",
      "mod3": "*",
      "mod4": "*"
    }
  }
Run Code Online (Sandbox Code Playgroud)

在这个设置中,没有必要在每个模块中声明依赖关系,package.json并且代码库有很多跨包导入import {svc} from 'mod1'.

是否有工具来分析所有代码导入并提取纱线工作区之间的跨包依赖关系?

mod1 -> mod2
 |
 v
mode3 -> mod4
Run Code Online (Sandbox Code Playgroud)