Webpack Jest Custom Resolver - PullRequest
       7

Webpack Jest Custom Resolver

0 голосов
/ 27 июня 2019

У меня есть пользовательский преобразователь веб-пакетов, и он используется встроенным способом

import abc from 'xyz!abc

Где xyz - пользовательский распознаватель. Это хорошо работает для запуска приложения, однако, когда дело доходит до шуток, я не уверен, как я могу использовать распознаватель. У меня нет вариантов, когда дело доходит до того, что решатель должен быть встроенным и не может быть осмеянным.

Webpack импортирует распознаватель в webpack.config.js

  config.resolveLoader = {
    modules: [
      'node_modules',
      'loaders'
    ]
  }

1 Ответ

0 голосов
/ 27 июня 2019

Вы можете использовать опцию jest resolver , чтобы воссоздать ваш собственный преобразователь веб-пакетов

Эта опция позволяет использовать собственный распознаватель. Этот преобразователь должен быть модулем узла, который экспортирует функцию, ожидающую строку в качестве первого аргумента. Функция должна либо возвращать путь к модулю, который должен быть разрешен, либо выдавать ошибку, если модуль не может быть найден.

Другой вариант - использовать функциональность jest module mapper , чтобы отобразить такие импорта, как xyz!abc, в конкретный файл.

{
  "moduleNameMapper": {
    "^xyz!abc$": "<rootDir>/RelativeImageStub.js",
    "module_name_(.*)": "<rootDir>/substituted_module_$1.js"
  }
}

второй вариант показывает, как динамически сопоставлять параметры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...