【问题标题】:Can't resolve './util' multiply times in react webpack app无法在反应 webpack 应用程序中解析“./util”倍增
【发布时间】:2019-03-19 06:27:03
【问题描述】:

我尝试在我的应用程序中添加一些模块,当我尝试编译它时,它被捕获了 such errors。顺便说一句,我只将模块导入 js 文件,甚至不使用它。

这里是my folder structure。我尝试在 createwaiver 文件夹中的 index.js 中导入(第二个亮点)。

我尝试检查我的 webpack 配置,但允许 js 扩展 (copied config file)。

Here 是我的 src/util 文件夹,它的组件之一以异步方式呈现其他组件

【问题讨论】:

    标签: reactjs npm webpack node-modules yarnpkg


    【解决方案1】:

    我不是 100% 确定,但我相信您的问题是您的 webpack 配置中第 208 行有 util 别名:

    util: `${this.srcPathAbsolute}/util/`
    

    这意味着所有导入 'util/....' 将解析为 yourrootfolder/src/util,我不确定您在该文件夹中有什么,但我会先删除该行或将其重命名为:

    waiverutil: `${this.srcPathAbsolute}/util/ 
    

    或类似的并检查您的代码并将您的所有'util/...' 导入到waiverutil/.... 如果这对我没有帮助,请尝试发布更多内容,例如您的导入和 /src/util 文件夹。

    【讨论】:

    • 我添加了 src/util 文件夹截图。我会尝试根据您的建议重命名所有内容,但这张截图可能会告诉您更多信息。
    • 好吧,看起来像一个解决方案!非常感谢!问题确实出在文件夹和包的名称中。
    【解决方案2】:

    在您的resolve.alias 属性中,您有一个别名定义为util: '${this.srcPathAbsolute}/util/'。这会导致错误,因为在您的应用程序文件和node_modules 目录中importrequire 语句在路径开头包含util 的任何位置,该路径将被错误地重写为以./src/util/ 开头。

    这个别名:

    resolve: {
      alias: {
        util: `${this.srcPathAbsolute}/util/`
      }
    }
    

    需要重命名为其他名称以避免与许多包导入的util 包冲突。因此,您还需要更改应用文件中以util 开头的路径以匹配此更改。

    【讨论】:

      猜你喜欢
      • 2018-03-28
      • 2020-12-19
      • 2022-10-08
      • 1970-01-01
      • 1970-01-01
      • 2016-12-14
      • 1970-01-01
      • 2023-03-13
      相关资源
      最近更新 更多