重复的模块导入

时间:2019-05-18 23:34:38

标签: javascript webpack material-ui bundler parceljs

我正在使用Parcel@material-ui/styles创建一个应用程序。我的应用具有@material-ui/styles依赖性。我还将导入自己的本地存储的npm软件包。此软件包还具有@material-ui/styles依赖性,但它是对等依赖性。我认为该程序包将使用我的应用程序中的@material-ui/styles程序包,但是同一程序包有两个不同的实例,它们导致It looks like there are several instances of "@material-ui/styles" initialized in this application. This may cause theme propagation issues, broken class names and makes your application bigger without a good reason.错误。

我在这里描述它:https://github.com/mui-org/material-ui/issues/15745,但是没有人试图帮助我。它可能与我使用的软件包没有直接关系,但与捆绑器的工作方式有关。我不知道为什么Parcel将这个包裹捆绑两次而不是一次捆绑。

当我尝试使用Webpack时,出现相同的问题。我一直认为对等依赖性将按照我的描述进行工作。

这是一个复制存储库:https://github.com/lukejagodzinski/mui-styles-reproduction

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,这对我有帮助:https://github.com/parcel-bundler/parcel/issues/1838#issuecomment-492369750

这基本上将消除对构建时间的重复依赖。 另外请注意,您正在使用TS,因此在此问题上还有另一种复杂性。