You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用create-react-app创建的项目执行npm start时未触发linting

解决create-react-app项目npm start不自动lint的问题

别担心,我之前也碰到过一模一样的情况,咱们一步步排查就能搞定:

  • 确认start脚本未被修改
    先打开你的package.json,检查scripts里的start命令是不是默认的:

    "scripts": {
      "start": "react-scripts start"
    }
    

    如果被改成了自定义命令,很可能丢失了自动lint的触发逻辑,改回默认脚本就行。

  • 重新安装依赖修复潜在问题
    有时候依赖安装会出现隐性错误,你可以先删掉node_modules文件夹和package-lock.json(用yarn的话就删yarn.lock),然后执行:

    npm install
    

    安装完成后,检查package.json的devDependencies里是否包含eslint、eslint-config-react-app、eslint-plugin-react这些依赖——create-react-app默认会自动引入它们。

  • 检查eslint配置是否被覆盖
    如果你手动添加了.eslintrc文件,或者在package.json里加了eslintConfig字段,一定要确保它继承了官方的默认配置:

    "eslintConfig": {
      "extends": "react-app"
    }
    

    另外,别在.eslintignore里把src/目录加进去,不然eslint会直接跳过整个源码文件夹的检查。

  • 排查是否禁用了lint的环境变量
    看看项目里有没有设置DISABLE_ESLINT_PLUGIN=true这个环境变量——不管是写在.env文件里,还是启动命令里额外加的,只要这个变量存在,create-react-app就会关闭自动lint功能。如果有,删掉它就行。

  • 升级react-scripts到最新版
    旧版本的react-scripts可能存在lint触发的bug,你可以尝试升级到最新稳定版:

    npm install react-scripts@latest
    

    升级完成后重启项目,看看lint是否正常触发。

  • 手动测试lint功能是否正常
    先执行手动lint命令验证核心功能:

    npm run lint
    

    如果这个命令能输出lint错误(可以故意写个小错误,比如定义未使用的变量),说明eslint本身没问题,只是npm start的自动触发逻辑有问题;如果手动也没输出,要么是代码完全符合规则,要么是配置还有遗漏。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:41:19