ESLint не может обнаружить определенные модули при использовании `webpack` в качестве `import/resolver`

Я использую Webpack в своем проекте, а также ESLint. я установилeslint-plugin-importиeslint-import-resolver-webpackчтобы помочь ESLint понять некоторыеresolve.aliasesиспользуется в проекте (как упоминается здесь). Я также использую, как и .

Проблема в том, что когда я пытаюсь импортировать , ESLint сообщает мне, что этоUnable to resolve path to module 'react-hook-form'. eslint(import/no-unresolved). Этого не происходит с . Вот минимальный воспроизводимый пример (https://github.com/nishnat-rishi/min-repro).

В моем реальном проекте проблематичнымnode_modulesявляются:

  • react-hook-form
  • @headlessui/react

а рабочие это:

  • @heroicons/react
  • react
  • react-dom
  • react-router-dom

Я уже пробовал:

  • Добавление{... resolve: { modules: ["node_modules"] } ... }в . При этом ничего не меняется, та же ошибка. Я также пробовал следующие варианты:
            ... modules: [path.resolve(__dirname, "node_modules")]
    ... modules: [path.resolve(__dirname)]
    
  • Добавление{... resolve: { mainFields: ["browser", "module", "main"] } ... }вwebpack.config.js. При этом ничего не меняется, та же ошибка. Я также переместился вокруг трехmainFieldsзаписи безрезультатно.

Что я упускаю / ошибаюсь?

РЕДАКТИРОВАТЬ: мне нужно было использовать оба преобразователя в моем.eslintrc:

      "import/resolver": {
  "node": {},
  "webpack": {}
}

1 ответ

Мне нужно было использовать оба преобразователя в моем.eslintrc:

      "import/resolver": {
  "node": {},
  "webpack": {}
}
Другие вопросы по тегам