typescript import/resolver在. eslintrc.js文件中做什么?

oknrviil  于 2023-01-10  发布在  TypeScript
关注(0)|答案(1)|浏览(292)

我在我的项目中实现了yarn berry,而不是使用node_modules。
在我迁移yarn berry(yarn-3.1.1版本)之后,在文件中开始出现以下eslint错误,位于import语句的顶部,即import react from 'React'

Resolve error: unable to load resolver "node".eslintimport/namespace
Resolve error: unable to load resolver "node".eslintimport/no-extraneous-dependencies
Resolve error: unable to load resolver "node".eslintimport/default
Resolve error: unable to load resolver "node".eslintimport/no-duplicates
Resolve error: unable to load resolver "node".eslintimport/order
Resolve error: unable to load resolver "node".eslintimport/no-self-import
Resolve error: unable to load resolver "node".eslintimport/no-cycle
Resolve error: unable to load resolver "node".eslintimport/no-relative-packages
Resolve error: unable to load resolver "node".eslintimport/no-named-as-default

在我迁移纱莓之前,这些错误从未发生过。
但是,当我添加typescript对象时,import/resolver中包含project: 'tsconfig.json',如下所示:

settings: {
    'import/resolver': {
      typescript: { // here
        project: 'tsconfig.json', 
      },
      node: {
        extensions: ['.js', '.jsx', '.ts', '.tsx'],
      },
    },
    'import/parsers': {
      '@typescript-eslint/parser': ['.ts', '.tsx'],
    },
    react: {
      version: 'detect',
    },
  },

错误都消失了。
我已经解决了这个问题,但我还有疑问。
import/resolver内部的typescript选项对yarn berry有什么作用?

jgovgodb

jgovgodb1#

import/resolver用于让ESLint了解项目在路径等方面的设置。
如果我没记错的话,它被这个依赖项使用:https://www.npmjs.com/package/eslint-import-resolver-typescript

相关问题