# @corbinu/eslint-plugin-typescript 中文文档

规范地址：https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/

版本：25\.0\.1
npm 元数据更新时间：2022-06-12T16:41:56.303Z
中文译文更新时间：2026-11-10T22:51:52.683Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40corbinu/eslint-plugin-typescript
原文对照：https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/?lang=original
项目主页：https://github.com/typescript-eslint/typescript-eslint#readme
源码仓库：https://github.com/typescript-eslint/typescript-eslint

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：240 kB，73 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=6
- 运行依赖：2 个
- peer 依赖：eslint \>=4\.13\.1 \< 6，typescript ~3\.2\.1
- 首次发布：2017-05-11T20:45:30.228Z
- 最新版本发布：2019-01-18T22:31:05.641Z
- 近 30 天下载量：2485（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：3（近 12 个月 0 个）

## 中文简介

ESLint 的脚本插件

## 安装

```sh
npm install @corbinu/eslint-plugin-typescript
```

也可以使用：`pnpm add @corbinu/eslint-plugin-typescript`、`yarn add @corbinu/eslint-plugin-typescript`、`bun add @corbinu/eslint-plugin-typescript`

## README

# eslint- 插图型标注

[![NPM version](https://img.shields.io/npm/v/eslint-plugin-typescript.svg)](https://www.npmjs.com/package/eslint-plugin-typescript) [![NPM downloads](https://img.shields.io/npm/dm/eslint-plugin-typescript.svg)](https://www.npmjs.com/package/eslint-plugin-typescript) [![TravisCI](https://img.shields.io/travis/bradzacher/eslint-plugin-typescript.svg)](https://travis-ci.com/bradzacher/eslint-plugin-typescript)

对ESLint的TypeScript支持. (此还入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出入入入入入入入入入入入入入入入入入入入入入出入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入入

### 以下内容为即将上映的1.0.0版. [请参见当前国家预防机制版本(0.14.0)的标签](https://github.com/bradzacher/eslint-plugin-typescript/tree/0.14.0)

## 安装

你首先需要安装 [ESLint 语录](http://eslint.org/)数字 :

```shellsession
$ npm i eslint --save-dev
```

下一个,安装 `typescript` 如果你还没有做到:

```shellsession
$ npm i typescript@~3.1.1 --save-dev
```

最后安装 `eslint-plugin-typescript`数字 :

```shellsession
$ npm install eslint-plugin-typescript --save-dev
```

**说明:** 如果在全球安装了 ESLint(使用 `-g` 您必须安装 `eslint-plugin-typescript` 在全球.

## 使用量

添加 `eslint-plugin-typescript/parser` 页:1 `parser` 字段和 `typescript` 到您的插件区 `.eslintrc` 配置文件 :

```json
{
  "parser": "eslint-plugin-typescript/parser",
  "plugins": ["typescript"]
}
```

注意: 插件提供了自己的版本 `@typescript-eslint/parser` 通过 `eslint-plugin-typescript/parser`。 。 。 . 这有助于我们保证插件和剖析器之间的100%兼容性 .

然后在规则章节下配置您想要使用的规则 .

```json
{
  "parser": "eslint-plugin-typescript/parser",
  "plugins": ["typescript"],
  "rules": {
    "typescript/rule-name": "error"
  }
}
```

您也可以同时启用所有推荐规则 。 添加 `plugin:typescript/recommended` 扩展中:

```json
{
  "extends": ["plugin:typescript/recommended"]
}
```

## 支持的规则

**密钥**: havy check mark:=推荐,:扳手:=可修复

| 名称 | 说明 | : 重度 检查 标记 : | :扳手: |
| --- | --- | --- | --- |
| [`typescript/adjacent-overload-signatures`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/adjacent-overload-signatures.md) | 要求成员连续超负荷(`adjacent-overload-signatures` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/array-type`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/array-type.md) | 需要使用其中之一 `T[]` 或者说 `Array<T>` 用于数组(`array-type` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |
| [`typescript/ban-types`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/ban-types.md) | 强制使用该类型(`ban-types` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |
| [`typescript/camelcase`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/camelcase.md) | 强制骆驼Case命名公约 | : 重度 检查 标记 : |  |
| [`typescript/class-name-casing`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/class-name-casing.md) | 需要PascalCased类和接口名称(`class-name` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/explicit-function-return-type`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/explicit-function-return-type.md) | 要求明确函数和分类方法的返回类型 | : 重度 检查 标记 : |  |
| [`typescript/explicit-member-accessibility`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/explicit-member-accessibility.md) | 要求对类属性和方法进行明确的无障碍修改(`member-access` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/generic-type-naming`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/generic-type-naming.md) | 强制命名通用类型变量 |  |  |
| [`typescript/indent`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/indent.md) | 执行一致缩进`indent` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |
| [`typescript/interface-name-prefix`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/interface-name-prefix.md) | 要求接口名称前缀 `I` (单位:千美元)`interface-name` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/member-delimiter-style`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/member-delimiter-style.md) | 界面和类型字符需要特定成员分隔符样式 | : 重度 检查 标记 : | :扳手: |
| [`typescript/member-naming`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/member-naming.md) | 通过能见度对阶级成员实施命名公约. |  |  |
| [`typescript/member-ordering`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/member-ordering.md) | 要求一致的成员声明命令(`member-ordering` 从 TSLint 调取) |  |  |
| [`typescript/no-angle-bracket-type-assertion`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-angle-bracket-type-assertion.md) | 强制使用 `as Type` 主张而不是 `<Type>` 断言(`no-angle-bracket-type-assertion` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-array-constructor`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-array-constructor.md) | 否定通用 `Array` 构造器 | : 重度 检查 标记 : | :扳手: |
| [`typescript/no-empty-interface`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-empty-interface.md) | 取消空接口声明( N)`no-empty-interface` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-explicit-any`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-explicit-any.md) | 放弃使用 `any` 类型(`no-any` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-extraneous-class`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-extraneous-class.md) | 禁止使用类作为命名空间( E)`no-unnecessary-class` 从 TSLint 调取) |  |  |
| [`typescript/no-inferrable-types`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-inferrable-types.md) | 将变量或参数初始化为数字、字符串或布尔的明示类型声明取消。 ()`no-inferrable-types` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |
| [`typescript/no-misused-new`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-misused-new.md) | 强制执行有效的定义 `new` 财务报告和审定财务报表 `constructor`. (中文(简体) )`no-misused-new` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-namespace`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-namespace.md) | 停止使用自定义的TypeScript模块和命名空间(`no-namespace` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-non-null-assertion`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-non-null-assertion.md) | 使用 `!` 后缀运算符( e)`no-non-null-assertion` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-object-literal-type-assertion`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-object-literal-type-assertion.md) | 禁止对象字词在类型断言表达式中出现(`no-object-literal-type-assertion` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-parameter-properties`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-parameter-properties.md) | 取消在类构造器中使用参数属性。 ()`no-parameter-properties` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-this-alias`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-this-alias.md) | 取消别名 `this` (单位:千美元)`no-this-assignment` 从 TSLint 调取) |  |  |
| [`typescript/no-triple-slash-reference`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-triple-slash-reference.md) | 否定 `/// <reference path="" />` 评论意见(`no-reference` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-type-alias`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-type-alias.md) | 停止使用类型别名( N)`interface-over-type-literal` 从 TSLint 调取) |  |  |
| [`typescript/no-unused-vars`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-unused-vars.md) | 取消未使用的变量( E)`no-unused-variable` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/no-use-before-define`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-use-before-define.md) | 在定义变量之前停止使用变量 | : 重度 检查 标记 : |  |
| [`typescript/no-var-requires`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/no-var-requires.md) | 除导入语句外, 停止使用必要语句(`no-var-requires` 从 TSLint 调取) | : 重度 检查 标记 : |  |
| [`typescript/prefer-interface`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/prefer-interface.md) | 将界面声明置于类型文字之上(T = {.})(`interface-over-type-literal` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |
| [`typescript/prefer-namespace-keyword`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/prefer-namespace-keyword.md) | 要求使用 `namespace` 关键词而不是 `module` 用于声明自定义类型脚本模块的关键字 。 ()`no-internal-module` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |
| [`typescript/type-annotation-spacing`](https://npmcn.com/package/%40corbinu/eslint-plugin-typescript/docs/rules/type-annotation-spacing.md) | 要求类型说明前后的相距一致(`typedef-whitespace` 从 TSLint 调取) | : 重度 检查 标记 : | :扳手: |

## 常见问题

### @corbinu/eslint-plugin-typescript 是什么？

ESLint 的脚本插件

### 如何安装 @corbinu/eslint-plugin-typescript？

在项目目录运行 npm install @corbinu/eslint-plugin-typescript，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：eslint（\>=4\.13\.1 \< 6）、typescript（~3\.2\.1）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @corbinu/eslint-plugin-typescript 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/corbinu\_\_eslint-plugin-typescript 是否存在。

### @corbinu/eslint-plugin-typescript 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @corbinu/eslint-plugin-typescript 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=6。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @corbinu/eslint-plugin-typescript 可以商用吗？

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

### @corbinu/eslint-plugin-typescript 的下载量有多少？

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

### @corbinu/eslint-plugin-typescript 还在维护吗？

最新版本 25\.0\.1 发布于 2019/01/19（7 年前）；至今共发布 3 个版本，其中过去 12 个月发布了 0 个；首次发布于 2017/05/12。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

