# @cksource-cs/eslint-config-cs-module 中文文档

规范地址：https://npmcn.com/package/%40cksource-cs/eslint-config-cs-module/

版本：11\.1\.0
npm 元数据更新时间：2026-10-28T12:59:53.352Z
中文译文更新时间：2026-11-09T23:22:39.112Z
软件包许可：UNLICENSED

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

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

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

- 包体积（解压后）：40.8 kB，8 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=22\.0\.0
- 运行依赖：15 个
- peer 依赖：eslint \>=10\.0\.0，typescript \>=6\.0\.0
- 首次发布：2019-08-05T12:50:31.363Z
- 最新版本发布：2026-09-03T08:05:29.492Z
- 近 30 天下载量：36323（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：65（近 12 个月 17 个）

## 中文简介

云服务ESLint配置.

## 安装

```sh
npm install @cksource-cs/eslint-config-cs-module
```

也可以使用：`pnpm add @cksource-cs/eslint-config-cs-module`、`yarn add @cksource-cs/eslint-config-cs-module`、`bun add @cksource-cs/eslint-config-cs-module`

## README

# ESLint/编程配置模块

这是带有ESlint和Typescript配置的模块,用于CS的每个模块.

## 配置图

这个模块搭载了两个基础TypeScript配置——它们仅在类型检查严格性上有所不同.

-   `tsconfig.strict.json` (建议):

对所有新包装和新包装的推荐基础配置. 与 TypeScript 6.x 默认对齐 .

```jsonc
{
  "extends": "@cksource-cs/eslint-config-cs-module/tsconfig.strict.json"
}
```

-   `tsconfig.common.json` (遗产):

原始的,非限制性的碱基配置. 仅用于尚未迁移到严格的软件包 预设。 新的软件包不应扩展此配置 .

```jsonc
{
  "extends": "@cksource-cs/eslint-config-cs-module/tsconfig.common.json"
}
```

## 迁移到 6.x

6.0版本执行新版本 `eslint.config.js`,指平面配置是现在ESLint的默认配置格式. **`.eslintrc` 已正式贬值** 不应该使用它,因为对它的支持将在即将到来的ESLint主要版本中被去掉.

我们强烈建议使用联署材料单元(第1段)`*.mjs`用于定义配置 :

```ts
import { defineConfig, globalIgnores } from 'eslint/config';
import csConfig from '@cksource-cs/eslint-config-cs-module';

export default defineConfig(
    csConfig,
    globalIgnores( [
        '**/coverage',
        '**/dist',
        '**/dist-tests'
    ] )
);
```

> **记着!** 最新版本不再导出 `/typescript` 子路径。 所有格式规则都通过一个切入点被曝光.

### 显著的线性变化

-   新规则 `@typescript-eslint/consistent-type-imports` 鼓励指定 `type` 进口的关键字,以表示出口只存在于类型系统中,而非运行时间. 这使得转接器在不知道依赖类型的情况下可以减少进口. **此规则仅输出 a `warn` 消息,因为它会影响所有现有导入中的重大代码样式变化.**
    
-   由于基础 [断开更改](https://eslint.org/blog/2024/04/eslint-v9.0.0-released) 发生在 `eslint`,一些规则被删除并移至第三方插件. 显著的规则变化包括:
    
    -   `max-len` - > (中文) `@stylistic/max-len`
    -   `indent` - > (中文) `@stylistic/indent`
    -   `no-multi-spaces` - > (中文) `@stylistic/no-multi-spaces`
    -   `no-path-concat` - > (中文) `node/no-path-concat`
    -   `no-new-require` - > (中文) `node/no-new-require`
-   这个新的主要版本也开始正确进行测试文件,因此可以注意到更多的linter出错.
    
-   指令 - 对于浏览器-环境脚本: `/* eslint-env browser */` - > (中文) `/* global window */`
    

### 依赖性要求

-   `eslint: "9.37.x"`
-   `typescript: "5.9.x"`

移徙过程应包含与以往类似的步骤.

## 迁移到 3.x

3.0.0版本引入了一些可以要求一些手动修正(所有基于代码审查过程中的评论)的用意规则,并引入了Typescript > 4.

从3.0.0版本起,这个模块需要特定的依赖性:

-   `eslint: "8.6.0"`
-   `eslint-import-resolver-node: "0.3.6"`
-   `typescript: "5.4.5"`

**说明:** 这可能是一种情况,当 `@types/node` 未更新模块。 最佳选项是将该模块更新至20.11.1.

因此,移徙进程应包含类似的步骤:

1.  更新工程中的devDependents(slint, Typescript等).
2.  更新 @cksource-cs/eslint-config-cs-module到 > 3.0.0版本
3.  运行 `pnpm cli build [package_name]` 或者说 `npm run build`
4.  运行 `npm run lint:fix`
5.  手动解决所有问题.
6.  运行 `npm run lint`
7.  运行所有测试.
8.  修补检验.

**说明:** 这可能是一个问题 `ts-node` 在Mocha测试中,建议删除 `ts-node` 使用方法 `dist-tests`有关Mocha移民到AVA的更多信息,请参见本文: [https://www.notion.so/ 从-Mocha-to-AVA-48bd10bf8be141349c4a8d302d5f957d](https://www.notion.so/Migrating-from-Mocha-to-AVA-48bd10bf8be141349c4a8d302d5f957d) 。 。 。 .

## 更新通关规则

如果你认为我们需要改变ESLint规则, 确保先与球队讨论. 一旦你得到了前行, 遵循下面的步骤 更新包 在整个CS:

1.  更新 `eslintrc.js` 视需要(采用通用ESLint规则)和/或 `typescript.js` (仅针对特定技术规则).
2.  跳出此模块的版本( Q)`eslint-config-cs-module`(单位:千美元) `package.json`。 。 。 .
3.  要估计需要做多少活来更新其他软件包中的linter模块,创建本地链接并尝试应用自定义:

```bash
csli link --min-version=3.0.0 eslint-config-cs-module && \
csli run lint:fix
```

4.  如果您对修改感到满意,请继续使用PR并发布ESLint模块的新版本.
5.  公关合并后,切换到 `master`.去CS寄存器根并运行以下命令来更新所有客户端包中的ESLint模块. 命令还将尝试自动修复任何错误,类似于我们在第2步中所做的.

```bash
pnpm -r install --dev && \
csli run deps:check --command-options="-u,-f @cksource-cs/eslint-config-cs-module" && \
pnpm -r install --dev && \
csli run lint:fix
```

6.  需要时应用手动修正,将更改输入一个特性分支并创建 PR.

## 常见问题

### @cksource-cs/eslint-config-cs-module 是什么？

云服务ESLint配置\.

### 如何安装 @cksource-cs/eslint-config-cs-module？

在项目目录运行 npm install @cksource-cs/eslint-config-cs-module，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：eslint（\>=10\.0\.0）、typescript（\>=6\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @cksource-cs/eslint-config-cs-module 支持 TypeScript 吗？

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

### @cksource-cs/eslint-config-cs-module 支持 ESM 还是 CommonJS？

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

### @cksource-cs/eslint-config-cs-module 需要什么版本的 Node\.js？

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

### @cksource-cs/eslint-config-cs-module 可以商用吗？

@cksource-cs/eslint-config-cs-module 使用 UNLICENSED 许可。作者声明为 UNLICENSED，即不授予公开使用许可（与公共领域的 Unlicense 不同）。使用前需获得作者授权。以上为概括，不构成法律意见，请以许可原文为准。

### @cksource-cs/eslint-config-cs-module 的下载量有多少？

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

### @cksource-cs/eslint-config-cs-module 还在维护吗？

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

