使用 eslint-config-airbnb 后“./reducer”错误缺少文件扩展名“tsx”

Posted

技术标签:

【中文标题】使用 eslint-config-airbnb 后“./reducer”错误缺少文件扩展名“tsx”【英文标题】:Missing file extension "tsx" for "./reducer" error after using eslint-config-airbnb 【发布时间】:2020-07-26 02:07:06 【问题描述】:

我正在为我的项目使用 eslint 和更漂亮的代码格式化程序。使用 airbnb 后出现类似

的错误 “./reducer”缺少文件扩展名“tsx” “./saga”缺少文件扩展名“tsx”

reducer 有 index.tsx 和 saga 文件夹。 我已经在我的 .eslintrc.yml 文件中尝试了 import/extensions: [".js", ".jsx", ".tsx"] 但仍然出现错误。

【问题讨论】:

【参考方案1】:

eslint-config-airbnb 已启用此规则:

    'import/extensions': ['error', 'ignorePackages', 
      js: 'never',
      mjs: 'never',
      jsx: 'never',
    ],

见here。

如果要关闭它,您可以在自己的 eslint 配置文件中覆盖它,如下所示:

'import/extensions': 'off'

有关如何配置此特定规则的更多信息,请访问here

【讨论】:

感谢您的回复。我尝试将 setitng 'import/extensions' 关闭并将 tsx 也关闭,但错误仍然存​​在 这是我的 .eslintrc.yml 文件内容 parserOptions:ecmaFeatures:jsx:true ecmaVersion:2018 sourceType:模块解析器:babel-eslint 插件:- 反应- 更漂亮的设置:导入/解析器:“@typescript-eslint/parser”:[“.ts”,“.tsx”] 反应:版本:检测导入/扩展:[“error”,“always”,“tsx” : "never", "ts": "never" ] 导入/解析器: 节点: 路径: ["src"] 扩展: [".js", ".jsx", ".tsx"] 规则: .. . 您能否在应用格式后将其添加到您的原始问题中?无论如何,import/extensions: off 应该放在rules 下。 非常感谢 Jackyef。在大多数地方,导入/扩展都在设置而不是规则之下。我也犯了同样的错误。你拯救了我的一天。谢谢

以上是关于使用 eslint-config-airbnb 后“./reducer”错误缺少文件扩展名“tsx”的主要内容,如果未能解决你的问题,请参考以下文章

Mac WebStorm 错误:找不到模块“eslint-config-airbnb”

使用 eslint-config-airbnb 扩展名为“.js”的文件中不允许使用 JSX

eslint-config-airbnb vs prettier vs standard

javascript Scott Tolinski的ESLint配置。必须安装eslint-config-airbnb才能正常工作。

使用 React 和 Webpack 设置 Airbnb ESLint

如何使用 nodejs express 应用程序配置 eslint