簡體   English   中英

開玩笑 - 找不到具有從共享(Angular)相對導入的模塊

[英]Jest - cannot find module with relative import from shared (Angular)

我開玩笑說自定義相對路徑有問題。 幾次嘗試后,Jest 找不到模塊沒有找到解決方案? 我對這個配置有問題,或者問題可能在其他配置文件中? 如果需要,我可以發布其他配置文件;)

Cannot find module '@ht/tools' from 'src/app/shared/components/base-grid/base-grid.component.ts'
   Require stack:
  src/app/shared/components/base-grid/base-grid.component.ts
  src/app/shared/index.ts
  src/app/pages/registries/subpages/temperatures/components/temperature-objects-grid/temperature-objects-grid.component.ts
  src/app/pages/registries/subpages/temperatures/containers/temperatures/temperatures.component.ts
  src/app/pages/registries/subpages/temperatures/containers/temperatures/temperature.component.spec.ts

這是我的 jest.config.js

module.exports = {
    preset: 'jest-preset-angular',
    globals: {
        'ts-jest': {
          tsConfig: 'src/tsconfig.spec.json',
        }
    },
    transform: {
        '^.+\\.(ts|js|html)$': 'ts-jest'
    },
    moduleNameMapper: {
        "@ht/$": "<rootDir>/src/app/shared/$1",
        '^src/(.*)$': '<rootDir>/src/$1',
        '^app/(.*)$': '<rootDir>/src/app/$1',
        '^assets/(.*)$': '<rootDir>/src/assets/$1',
        '^environments/(.*)$': '<rootDir>/src/environments/$1',
    },
    moduleFileExtensions: ['ts', 'html', 'js', 'json'],
    modulePathIgnorePatterns: ["<rootDir>/src/environments"],
    setupFilesAfterEnv: [
        '<rootDir>/src/jest.setup.ts'
    ]
};

"@ht/$": "<rootDir>/src/app/shared/$1"映射僅匹配...@ht/模塊而不是@ht/...並使用不存在的匹配組。

考慮到作用域包是src/app/shared/中的目錄,它的編寫方式應該與其他映射完全相同:

'^@ht/(.*)$': '<rootDir>/src/app/shared/$1',
'^src/(.*)$': '<rootDir>/src/$1',
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM