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

React+TS/JS项目:如何配置SonarQube支持kebab-case文件名或禁用规则

解决SonarQube对kebab-case文件名的代码异味问题

你遇到的是SonarQube检查「文件名与默认导出组件名匹配」规则触发的问题,以下是三种处理方案:

方案一:禁用对应匹配规则

触发该问题的规则ID,TypeScript版本为typescript:S100,JavaScript版本为javascript:S100,操作步骤如下:

  • 登录SonarQube后台,进入你的项目
  • 切换到「质量配置」页面,找到当前项目使用的规则集
  • 搜索规则ID(如S100)定位到目标规则
  • 选择禁用该规则(可全局禁用或仅针对当前项目禁用)

方案二:配置规则兼容kebab-case文件名

如果不想完全禁用规则,可修改规则参数,让它同时支持帕斯卡命名和kebab-case:

  • 进入SonarQube后台的规则配置页,找到上述规则
  • 编辑规则的「文件名格式」参数,替换为支持两种命名的正则表达式:
    ^([A-Z][a-z0-9]*)*(\.([a-z0-9]+))?$|^[a-z0-9]+(-[a-z0-9]+)*(\.([a-z0-9]+))?$
    
  • 保存配置后重新执行SonarQube扫描

临时方案:仅排除单个文件

如果只想跳过这一个文件的检查,无需修改全局规则,直接更新你的扫描配置:
修改lintExclusions变量,把目标文件加入排除列表:

const lintExclusions = `**/bootstrap.js, 
                        **/bootstrap.tsx, 
                        **/AppCompnonent.js, 
                        **/AppCoponent.tsx, 
                        **/components/time-distance.tsx,
                        ...`;

重新运行扫描即可忽略该文件的此规则检查

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 01:40:28