Webpack确定包裹的哪一部分应该包括什么机制

时间:2019-07-07 03:15:40

标签: javascript webpack redux-saga

情况:

  1. 我正在使用redux-saga软件包。
  2. 我有两个包裹A和B。而且它们都依赖于 redux-saga 软件包。
  3. 我正在建立一个依赖于A,B以及 redux-saga 的新项目。
  4. 我正在使用webpack为我的新项目制作一个捆绑包。

期望:

我的新项目包应仅包含redux-saga一次。

现实:

如果我通过以下方式将Redux-saga软件包的一部分导入A和B软件包中:

import {take, ...} from 'redux-saga/effect'

然后一切都会按预期进行。 redux-saga的代码在我的捆绑包中只包含了一次。

但是,如果我通过这种方式在A和B包中导入redux-saga的一部分,则:

import {End, ...} from 'redux-saga'

然后,redux-saga的代码将在我的捆绑软件中重复3次

问题

这是怎么来的?而我该如何改善呢?

1 个答案:

答案 0 :(得分:0)

事实证明,我已经为软件包A和B运行了 npm链接。如果我以正常方式安装A和B,那么一切都会按预期进行!