Skip to content

死代码 (Dead Code)

ID: dead_code | 严重程度: 低 (默认)

死代码是指在项目中未被任何地方导入或使用的导出函数、类或变量。

为什么这是一种坏味道

  • 维护负担: 开发人员可能会花时间更新或重构根本没被使用的代码。
  • 包大小: 增加了最终应用程序的大小(尽管许多打包工具会进行摇树优化 Tree-shaking)。
  • 混淆: 使模块的 API 看起来比实际更大、更复杂。

示例

坏习惯

typescript
// utils.ts
export const usedHelper = () => { ... };
export const unusedHelper = () => { ... }; // 被报告为死代码

// main.ts
import { usedHelper } from './utils';

如何修复

  1. 删除它: 如果确实未使用,最好的操作是将其移除。
  2. 标记为入口点 (Entry Point): 如果它是公共 API 或动态导入的一部分,请将其添加到配置中的 entry_points

配置

yaml
entry_points:
  - 'src/index.ts'
  - 'src/api/**/*.ts'

ESLint 规则

此检测器可作为 ESLint 规则使用,以便在编辑器中获得实时反馈。

javascript
// eslint.config.js
export default [
  {
    rules: {
      '@archlinter/no-dead-code': 'warn',
    },
  },
];

详见 ESLint 集成 了解设置说明。

Released under the MIT License.