【发布时间】:2021-03-26 00:29:01
【问题描述】:
我正在使用 yarn 工作区 (Monorepo),并且添加了一个已经创建的 react 应用程序,但是现在,每次我只需要从 Monorepo 构建一个项目时,它都会安装来自 create react 应用程序的所有内容,即使它不会不能用。
我需要做的是保留所有内容,从它自己的包中的 node_modules 中创建 react 应用程序,而不是在根 node_modules 中
如何从 yarn 工作区的共享依赖中移除 CRA 依赖?
例如,如果我有一个 Monorepo 之类的
- packages/
- create-react-app
- fooApp
- sharedApp
当在create-react-app 包内运行yarn 时,我想安装从fooApp 和sharedApp 使用的每个依赖项(这是纱线工作区的预期行为)但是当在yarn 内运行fooApp 时,我想从sharedApp 安装每个依赖项,但不是 create-react-app(我不能,因为它正在安装来自sharedApp 和create-react-app 的依赖项)。
【问题讨论】:
-
你不能使用
react-scripts eject弹出 CRA 应用程序并从 package.json 中删除额外的依赖项 -
这不是我想做的,我想从共享 node_modules 的 CRA 中删除每个包,因为我不想在其他应用程序中重用它。这不是关于“拥有额外的依赖关系”,而是关于“不共享 CRA 依赖关系”
标签: reactjs create-react-app yarnpkg monorepo yarn-workspaces