0

我正在使用自制组件库在我的项目之间共享组件。问题是,即使在使用创作库指南之后,webpack它仍然在我的主构建中包含这些依赖项,我不知道这是由什么设置引起的......

构建分析(捆绑我的应用程序时)

在这里你可以看到node_moduleswizer-components/node_modules。包括react-dom两次(和其他)

在此处输入图像描述

构建分析(组件的)

如您所见,此处未捆绑任何 node_modules ...

在此处输入图像描述

设置文件

因为我找不到问题所在,所以我创建了配置文件的要点

  • webpack.config.js(组件库的)
  • webpack.config.production.js(应用程序)

设置

正如信息一样,我正在使用monorepo设置与lernanpm linkwizer-components)的依赖关系,而无需将其npm作为模块推送。这可能是 webpack 认为它需要重新添加react(和其他)的问题吗?

4

1 回答 1

2

在尝试完成这项工作总共 4 天后(在我提出问题之前就这样做了),我设法解决了它(终于)!

问题在于 lerna / NPM 链接和依赖关系解析,请参阅此答案底部的方便链接。

我通过执行以下步骤修复了它:

  1. dependencies( react, react-dom) 移动到peerDependencieswizer-components我的组件库)package.json文件中
  2. 删除我的所有node_modules文件夹(应用程序和组件库)
  3. 运行$ lerna bootstrap重新下载我的node_modules
  4. 删除我的组件库的构建过程(我在构建我的应用程序时构建这些)
  5. webpack.config.production.js在这些关键领域改变我

(做了一张图片,因为它不会在这里格式化-_-

在此处输入图像描述

有用的链接(也看看评论):

于 2017-08-22T18:48:23.057 回答