相关疑难解决方法(0)

使用Jest和Webpack别名进行测试

我希望能够在使用jest时使用webpack别名来解析导入,并且最佳地引用它webpack.aliases以避免重复.

Jest conf:

  "jest": {
    "modulePaths": ["src"],
    "moduleDirectories": ["node_modules"],
    "moduleNameMapper": {
      "^@shared$": "<rootDir>/shared/",
      "^@components$": "<rootDir>/shared/components/"
    }
  },
Run Code Online (Sandbox Code Playgroud)

Webpack别名:

exports.aliases = {
    '@shared': path.resolve(paths.APP_DIR, 'shared'),
    '@components': path.resolve(paths.APP_DIR, 'shared/components'),
};
Run Code Online (Sandbox Code Playgroud)

进口:

import Ordinal from '@shared/utils/Ordinal.jsx';
import Avatar from '@components/common/Avatar.jsx';
Run Code Online (Sandbox Code Playgroud)

由于某种原因@导致问题,所以当删除(在别名和导入中)时,它可以找到sharedcomponents仍然无法解决.

 FAIL  src/shared/components/test/Test.spec.jsx
  ? Test suite failed to run

    Cannot find module '@shared/utils/Ordinal.jsx' from 'Test.jsx'
Run Code Online (Sandbox Code Playgroud)

我尝试过使用jest-webpack-alias,babel-plugin-module-resolverJest/Webpack docs

javascript reactjs webpack jestjs webpack-2

35
推荐指数
7
解决办法
1万
查看次数

标签 统计

javascript ×1

jestjs ×1

reactjs ×1

webpack ×1

webpack-2 ×1