Импорт Jest и файлового загрузчика - PullRequest
2 голосов
/ 07 января 2020

В настоящее время я импортирую модуль с помощью загрузчика файлов в один из моих файлов в приложении реакции (CRA):

"file-loader?name=scripts/[name].[hash].js!jsstore/dist/jsstore.worker.min.js"

При запуске Jest выдает эту ошибку:

Cannot find module 'file-loader?name=scripts/[name].[hash].js!jsstore/dist/jsstore.worker.min.js'

Я пробовал разные конфиги в пакете. json для Jest, установив либо modulePathIgnorePatterns, либо moduleNameMapper, но ни один из параметров конфигурации не работает:

"modulePathIgnorePatterns": [
        "file-loader?name=scripts/[name].[hash].js!jsstore/dist/jsstore.worker.min.js"
      ]
"moduleNameMapper": {
        "file-loader?name=scripts/[name].[hash].js!jsstore/dist/jsstore.worker.min.js": "<rootDir>/node_modules/jsstore/dist/jsstore.worker.min.js"
      }

1 Ответ

2 голосов
/ 08 января 2020

Вы можете сопоставить этот импорт с файлом, который будет возвращать string, который возвращает file-loader;

moduleNameMapper: {
  "^file\-loader":"<rootDir>/__mocks__/fileMock.js",
}
// __mocks__/fileMock.js

module.exports = 'file-path-mock';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...