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

Eslint Airbnb预设下使用箭头函数,配置后VSCode无错误提示的解决方法

问题解决步骤

1. 修复无效的ESLint规则

你当前配置中的allowArrorFunctions: true是不存在的拼写错误规则,ESLint无法识别这个配置,导致整个规则集加载失败,所以VSCode不再显示错误提示。需要替换为正确的箭头函数相关规则:

修改后的.eslintrc.js配置:

module.exports = {
  env: {
    browser: true,
    es2021: true,
  },
  extends: [
    'plugin:react/recommended',
    'airbnb',
  ],
  overrides: [],
  parserOptions: {
    ecmaVersion: 'latest',
    sourceType: 'module',
  },
  plugins: ['react'],
  rules: {
    // 强制回调函数使用箭头函数
    'prefer-arrow-callback': 'error',
    // 优先使用箭头函数替代普通函数(顶层函数声明可根据需求调整)
    'func-style': ['error', 'expression', { allowArrowFunctions: true }],
    // 指定React组件必须用箭头函数定义
    'react/function-component-definition': [
      'error',
      {
        namedComponents: 'arrow-function',
        unnamedComponents: 'arrow-function',
      },
    ],
  },
};

2. 解决配置冲突

你的package.json中存在eslintConfig字段,会与根目录的.eslintrc.js产生冲突(Create React App会优先读取package.json中的ESLint配置)。需要删除package.json中的eslintConfig部分:

修改后的package.json关键片段:

{
  "name": "solita-frontend",
  "version": "0.1.0",
  "private": true,
  // ... 其他依赖和脚本保持不变
  // 移除以下eslintConfig字段
  // "eslintConfig": {
  //   "extends": ["react-app","react-app/jest"]
  // },
  "browserslist": {
    // ... 保持不变
  },
  "devDependencies": {
    // ... 保持不变
  }
}

3. 重启ESLint服务

ESLint可能缓存了错误配置,需要手动重启服务:

  • 打开VSCode命令面板(Ctrl+Shift+P / Cmd+Shift+P)
  • 输入ESLint: Restart ESLint Server并执行
  • 或者直接重启VSCode

完成以上步骤后,写一个普通函数(如function test() {}),VSCode应该会正常显示ESLint错误,提示你替换为箭头函数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 23:40:29