@code-pushup/typescript-plugin

中文文档
0.126.4发布于 2026/09/11MITTypeScriptES Module构建来源已验证近 30 天下载 1865

代码 PushUp 插件, 用于在 TypeScript 项目中逐步采用严格的编译标记

中文使用文档
文档目录5 节
  1. 开始
  2. 关于类型脚本检查
  3. 插件架构
  4. 插件配置规格
  5. 可选设置的类别

@ code- pushup/ typescript- plugin 密码

npm downloads dependencies

🕵️ 用编译器诊断测量类型脚本质量的代码 PushUp插件. 🔥

此插件允许您 在 TypeScript 项目中逐步采用严格的编译标记。 。 。 . 它使用 TypeScript 编译器分析您的代码库,以检测潜在的问题和配置问题.

TypeScript 编译器诊断以下列方式映射到代码 PushUp 审核:

  • value: 为特定类型Script配置选项找到的问题数量(例如 3)
  • displayValue: 发现的问题数量(如"3个问题")
  • score: 二进制评分 - 如果没有问题,则1分;没有问题,则0分
  • 将问题列入审计细节,包括:
    • 源文件位置
    • 来自 TypeScript 编译器的错误消息
    • 发现问题的代码

开始

  1. 如果还没有安装 @ code- pushup/ cli (英语) 并创建配置文件.

  2. 用您的软件包管理器安装为 dev 依赖 :

    npm install --save-dev @code-pushup/typescript-plugin
    
    yarn add --dev @code-pushup/typescript-plugin
    
    pnpm add --save-dev @code-pushup/typescript-plugin
    
  3. 将此插件添加到 plugins 在代码 PushUp CLI 配置文件中的数组(例如 . code-pushup.config.ts) (中文(简体) ).

    默认情况下, 一个根 tsconfig.json 用于编译您的代码库。 根据这些编译器选项,插件将生成审计.

    import typescriptPlugin from '@code-pushup/typescript-plugin';
    
    export default {
      // ...
      plugins: [
        // ...
        typescriptPlugin(),
      ],
    };
    
  4. 用 CLI 运行 CLI npx code-pushup collect 并查看或上传报告(参见 CLI 文档) (中文(简体) ).

关于类型脚本检查

TypeScript插件使用 TypeScript 编译器分析您的代码库,以识别潜在的问题并强制执行最佳做法. 它有助于确保类型安全和您的类型脚本代码的可维护性.

该插件提供多个审计, 分类为不同的组合 :

  • 语义错误数字 : semantic-errors - 类型检查和类型推断时出错
  • 语法错误数字 : syntax-errors - 在解析和对类型Script源代码进行校正时出错
  • 配置错误数字 : configuration-errors - 解析类型Script配置文件时发生的错误
  • 声明和语言服务错误数字 : declaration-and-language-service-errors - 在 TypeScript 语言服务操作中发生的错误
  • 内部错误数字 : internal-errors - 在类型Script内部操作中发生的错误
  • 无隐含出错数字 : no-implicit-any-errors - 与 noImplicitAny 编译器选项
  • 未知代码数字 : unknown-codes - 不匹配已知类型脚本错误代码的错误

每次审计:

  • 检查特定的类型Script编译器错误和警告
  • 根据发现的问题数量提供分数
  • 包括详细的错误信息和位置

每个集也作为组在插件中提供. 详见下面 审计和小组。 。 。 .

插件架构

插件配置规格

该插件接受以下参数:

选项类型默认说明
配置图字符串 qq 字符串 []tsconfig.json您的路径 tsconfig.json 文件
仅审计字符串 []未定义用于指定您要测量的文档类型的审计语句。 审计结果只包括特定审计

tsconfig

可选参数. 这个 tsconfig 选项可接受配置文件的路径或一系列路径。 默认为 tsconfig.json。 。 。 .

typescriptPlugin({
  tsconfig: './tsconfig.json',
});

您还可以提供多个 tsconfigs 来结合不同配置的结果(例如源文件和测试文件的单独配置) :

typescriptPlugin({
  tsconfig: ['./tsconfig.lib.json', './tsconfig.spec.json'],
});

如果您使用 Nx 单列波, 则会提供辅助功能, 以自动发现所有项目的 tsconfigs :

import typescriptPlugin, { tsconfigFromAllNxProjects } from '@code-pushup/typescript-plugin';

export default {
  plugins: [
    await typescriptPlugin({
      tsconfig: await tsconfigFromAllNxProjects(),
    }),
  ],
};

您可以以下列名称排除特定项目:

await tsconfigFromAllNxProjects({ exclude: ['my-app-e2e'] });

onlyAudits

这个 onlyAudits 选项允许您指定要测量的文档类型。 审计结果中只包括具体的审计。 所有审计都是默认列入的。 示例

typescriptPlugin({
  onlyAudits: ['no-implicit-any'],
});

可选设置的类别

您希望列入自定义类别(使用)的参考审计(或一组) npx code-pushup print-config 以列出审计和组别.

根据每次TypeScript检查对总体类分的影响来分配权重(将权重0指定为仅作为额外信息包含,而不影响类分).

// ...
categories: [
  {
    slug: 'typescript',
    title: 'TypeScript',
    refs: [
      {
        type: 'audit',
        plugin: 'typescript',
        slug: 'semantic-errors',
        weight: 2,
      },
      {
        type: 'audit',
        plugin: 'typescript',
        slug: 'syntax-errors',
        weight: 1,
      },
      // ...
    ],
  },
  // ...
];

此外,还可以使用下列组合:

// ...
categories: [
  {
    slug: 'typescript',
    title: 'TypeScript',
    refs: [
      {
        slug: 'problems',
        weight: 1,
        type: 'group',
        plugin: 'typescript',
      },
      // ...
    ],
  },
  // ...
];

版本与发布记录

@code-pushup/typescript-plugin 共发布 97 个版本,首次发布于 2025/04/04;过去 12 个月发布了 62 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.126.4latest2026/09/111 个月前
0.126.32026/05/195 个月前
0.126.22026/03/317 个月前
0.126.12026/03/317 个月前
0.126.02026/03/307 个月前
0.125.02026/03/277 个月前

关于 @code-pushup/typescript-plugin 的常见问题

@code-pushup/typescript-plugin 是什么?

代码 PushUp 插件, 用于在 TypeScript 项目中逐步采用严格的编译标记

如何安装 @code-pushup/typescript-plugin?

在项目目录运行 npm install @code-pushup/typescript-plugin,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:typescript(>=4.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@code-pushup/typescript-plugin 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@code-pushup/typescript-plugin 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@code-pushup/typescript-plugin 可以商用吗?

@code-pushup/typescript-plugin 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@code-pushup/typescript-plugin 的下载量有多少?

根据 npm 官方下载统计,@code-pushup/typescript-plugin 在 2026/10/10 – 2026/11/08 这 30 天内被下载 1,865 次,日均约 62 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@code-pushup/typescript-plugin 还在维护吗?

最新版本 0.126.4 发布于 2026/09/11(1 个月前);至今共发布 97 个版本,其中过去 12 个月发布了 62 个;首次发布于 2025/04/04。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。