【问题标题】:EsLint misinterpreting import statements in no-unused-varsEsLint 误解了 no-unused-vars 中的 import 语句
【发布时间】:2020-11-26 20:21:40
【问题描述】:

我的react 代码正常:

import React from 'react';
import Header from '../components/Common/Header';

// ...
header: (props) => <Header {...props} />
// ...other code

我只是想表明所有 imports 都在使用,但仍然给出错误的错误。

我正在使用ESlint config no-unused-vars 规则,但不幸的是它正在这样做:

E:\React\sg_app\src\containers\Todo\TodoScreen.js
  1:8   error  'React' is defined but never used                 no-unused-vars
  2:10  error  'View' is defined but never used                  no-unused-vars
  2:28  error  'StatusBar' is defined but never used             no-unused-vars
  5:8   error  'TodoFilter' is defined but never used            no-unused-vars
  6:8   error  'TodoListView' is defined but never used  

我的 eslint 配置

module.exports = {
  "extends": "eslint:recommended",
  "parser": "babel-eslint",
  "env": {
    "es6": true,
    "jest": true,
  },
  "parserOptions": {
    "sourceType": "module",
  },
  "rules": {
      "semi": "warn",
      "no-unused-vars": "warn",
      "no-use-before-define": "off",
      "no-multiple-empty-lines": ["warn", {"max": 2}],
      "no-console": "warn",
      "arrow-parens": ["error", "as-needed"],
      "comma-dangle": "off",
      // "import/first": "error"
  }
};

我如何阻止 eslintReact, View 等用作组件但错误地显示为未使用的导入提供错误?

【问题讨论】:

  • 你能分享你的eslint 配置文件吗?
  • 我认为我使用@FunkeyFlo 提到的插件取得了一些成功,但使用它也会执行其他不必要的错误,
  • @MwamiTovi 添加了文件
  • 啊,我想我知道问题出在哪里了...您安装了eslint-plugin-react 吗?如果没有,那么您需要为ESlint 安装它以了解所有这些react 行话。如果已经安装,则需要将此行添加到 eslint 配置文件:'plugin:react/recommended'"extends" 键。有意义吗?

标签: reactjs react-native eslint


【解决方案1】:

回答这个问题以供任何人将来参考 我通过@FunkeyFlo 的建议找到了解决方法 谢谢你的建议 plugin:react/recommended 这个 npmjs.com/package/eslint-plugin-react 包扩展是必要的,以使 eslint 在反应中工作。

"extends": [
    "eslint:recommended",
    "plugin:react/recommended"  //this plugin is required to use eslint for react, otherwise we will get errors for 'React' import, as 'no-unused-vars'
  ],

【讨论】:

    猜你喜欢
    • 2018-06-27
    • 2019-07-06
    • 1970-01-01
    • 2019-01-12
    • 2020-03-01
    • 2020-01-25
    • 2017-06-26
    • 2021-02-22
    相关资源
    最近更新 更多