【问题标题】:Jest can't resolve import with @ (at) characterJest 无法解析带有 @ (at) 字符的导入
【发布时间】:2021-10-23 07:04:02
【问题描述】:

我有问题。当我运行 Jest 测试时,它无法解析带有 at (@) 符号的导入。我有一个错误:

 FAIL  src/App.test.js
  ● Test suite failed to run

    Cannot find module '@/helpers/configureStore' from 'App.js'

如何解决此错误?

【问题讨论】:

    标签: javascript webpack jestjs


    【解决方案1】:

    我找到了解决方案in this post。因此,根据jest docs,我们应该转到package.json 文件,并确保我们的配置包含以下内容:

    {
      "jest": {
        "moduleNameMapper": {
           "@/(.*)$": "<rootDir>/src/$1"
        }
      }
    }
    

    "@/(.*)$": "&lt;rootDir&gt;/src/$1" 这是一个很酷的正则表达式,可以将我们的@/helpers/configureStore 解析为src/helpers/configureStore

    还记得退出 jest 交互模式(使用q 键)并再次运行以查看更改。

    【讨论】:

      【解决方案2】:

      如果您使用 jest.config.ts 并导入类似 '@app/app.constants' 的内容,您可以替换

         moduleNameMapper: {},
      

        moduleNameMapper: {
          "@app/(.*)$": "<rootDir>/src/app/$1",
        },
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-19
        • 2022-12-14
        • 2018-02-03
        • 1970-01-01
        • 2020-06-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多