You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在package.json中禁用ESLint的eqeqeq规则(create-react-app项目)

在create-react-app项目的package.json中禁用ESLint的eqeqeq规则

我完全理解你不想新增额外配置文件、只想通过package.json完成规则禁用的需求,之前的配置没生效大概率是因为没正确继承create-react-app的默认ESLint预设,下面是可行的解决方案:

正确的package.json配置写法

在你的package.json中,确保eslintConfig字段包含extends: "react-app"(这是create-react-app项目默认的ESLint配置预设),然后在rules里关闭eqeqeq规则:

{
  "name": "mypackage",
  "version": "0.1.0",
  "private": true,
  // ...其他项目字段(比如dependencies、scripts等)
  "eslintConfig": {
    "extends": "react-app",
    "rules": {
      "eqeqeq": "off"
    }
  }
}

让配置生效的关键步骤

  • 重启开发服务器:create-react-app的ESLint配置是在开发服务启动时加载的,修改package.json后必须重启npm start才能让新配置生效。
  • 排查冲突配置文件:确保项目根目录下没有其他ESLint配置文件(比如.eslintrc.eslintrc.js.eslintrc.json等)——这些文件的优先级高于package.json中的配置,如果存在,你的package.json配置会被忽略。
  • 编辑器重载(如果用VS Code):如果你使用VS Code的ESLint插件,修改配置后可以通过Ctrl+Shift+P调出命令面板,选择Reload Window来让插件读取新的配置。

验证配置是否生效

写一段使用==的测试代码,比如:

function testEquality() {
  if (1 == '1') {
    console.log("使用了==运算符");
  }
}

如果ESLint不再弹出Expected '===' and instead saw '=='的错误提示,就说明配置已经生效了。

如果还是有问题,可以尝试升级react-scripts到最新稳定版:

npm install react-scripts@latest

内容的提问来源于stack exchange,提问作者Hoxz

火山引擎 最新活动