# @fluidframework/eslint-config-fluid 中文文档

规范地址：https://npmcn.com/package/%40fluidframework/eslint-config-fluid/

版本：14\.0\.0
npm 元数据更新时间：2026-08-07T09:26:29.656Z
中文译文更新时间：2026-11-15T02:13:59.564Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40fluidframework/eslint-config-fluid
原文对照：https://npmcn.com/package/%40fluidframework/eslint-config-fluid/?lang=original
项目主页：https://fluidframework.com/
源码仓库：https://github.com/microsoft/FluidFramework

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

- 包体积（解压后）：386 kB，38 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=22\.22\.2
- 运行依赖：21 个
- 首次发布：2020-08-31T19:38:03.239Z
- 最新版本发布：2026-08-07T09:26:29.446Z
- 近 30 天下载量：6948（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：76（近 12 个月 5 个）

## 中文简介

流体框架可共享的 ESLint 配置

## 安装

```sh
npm install @fluidframework/eslint-config-fluid
```

也可以使用：`pnpm add @fluidframework/eslint-config-fluid`、`yarn add @fluidframework/eslint-config-fluid`、`bun add @fluidframework/eslint-config-fluid`

## README

# @fluidframework/slint-config-fluid (英语)

这个软件包包含一个共享的ESLint配置,所有软件包在"流体框架 repo"中使用.

## 所需资源

-   **ESLint 9 (英语)** (建议),或
-   **ESLint 8.21+ (英语)** 与 `ESLINT_USE_FLAT_CONFIG=true` 环境变量

这个包只使用ESLint的平面配置格式. 遗产 `.eslintrc` 不支持格式.

## 使用量

导入想要的配置并将其扩散到您的 `eslint.config.mts`数字 :

```javascript
// eslint.config.mts
import { strict } from "@fluidframework/eslint-config-fluid";
export default [...strict];
```

包根导出标准平面和服务器配置 。 对于特殊案例,也有明确的子路径: `@fluidframework/eslint-config-fluid/flat.mts` 财务报告和审定财务报表 `@fluidframework/eslint-config-fluid/server.mts`。 。 。 .

### ESLint 8.21+ (英语). 用户

如果您使用ESLint 8.21-8.x,您必须通过环境变量启用平面配置支持:

```bash
ESLINT_USE_FLAT_CONFIG=true eslint .
```

或者在你的 npm 脚本中:

```json
{
    "scripts": {
        "lint": "cross-env ESLINT_USE_FLAT_CONFIG=true eslint ."
    }
}
```

**说明:** ESLint 8.x平面配置支持是实验性的. 我们建议升级到ESLint 9,以获得最佳经验.

### 模块结构

平面配置为可维护性模块结构:

```
eslint-config-fluid/
├── flat.mts                    # Main entry point (~30 lines)
├── library/
│   ├── constants.mts           # Shared constants (ignores, file patterns, import restrictions)
│   ├── settings.mts            # Plugin settings (import-x, jsdoc)
│   ├── rules/
│   │   ├── base.mts            # Base rules from eslint:recommended, typescript-eslint, etc.
│   │   ├── recommended.mts     # Rules for recommended config (unicorn, type safety)
│   │   └── strict.mts          # Rules for strict config (jsdoc requirements, explicit access)
│   └── configs/
│       ├── base.mts            # Base config builder with all plugins
│       ├── overrides.mts       # Shared overrides (test files, React, JS files)
│       └── factory.mts         # Config factory functions
```

这一结构确保:

-   单个文件不超过~250行
-   常数和设置的单一真理源
-   每个单元都有一个单一的责任
-   易于理解和维护

## 配置

### 建议

Fluid Framework 库中使用的标准名为配置.

```javascript
import { recommended } from "@fluidframework/eslint-config-fluid";
export default [...recommended];
```

建议存储库中的所有图书馆使用此配置,尽管 [严格](https://npmcn.com/package/%40fluidframework/eslint-config-fluid/#readme-strict) 只要合理,就倾向于配置.

### 严格

Fluid框架库中最严格的配置 。 建议实施最高质量标准.

```javascript
import { strict } from "@fluidframework/eslint-config-fluid";
export default [...strict];
```

鼓励公众面对API的图书馆使用这种配置,鼓励将这种配置用作外部实例(例如: `fluidframework.com`) (中文(简体) ).

### 严格比欧姆

一种"严格"配置的版本,可以使Biome"推荐"所覆盖的规则被禁用. 用于同时使用ESLint和Biome的项目.

```javascript
import { strictBiome } from "@fluidframework/eslint-config-fluid";
export default [...strictBiome];
```

## 修改插件配置

如果您想要更改共享的 lint 配置( 即此软件包), 您需要做以下操作 :

1.  使相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相.
2.  发布预发包.
3.  更新核心软件包,以使用预放出lint配置.

更新 Lint 配置( 第 1步) 时, 运行 `npm run build` 并做出相应的改变.

### 跟踪信息配置随时间变化

当我们改变我们的设计时 经常会出现的一个问题是, “什么改变了?” 即使我们 除了升级道具,不要做其他任何更改,因为依赖升级可能包括一条新规则.

ESLint提供了打印适用于文件的配置的方法(`--print-config`因此,我们利用这种能力 打印应用配置为 JSON 文件。 当我们改变配置时, 我们可以再次打印出配置并获得 diff作为公关的一部分来审查-- 就像我们对代码更改的API报告一样.

## 脚本

| 脚本 | 说明 |
| --- | --- |
| `build` | `npm run print-config` |
| `build:readme:disabled` | `markdown-magic --files "**/*.md"` |
| `clean` | `rimraf --glob dist "**/*.build.log"` |
| `format` | `npm run prettier:fix` |
| `install-no-frozen` | `pnpm --config.minimum-release-age=10080 i --no-frozen-lockfile` |
| `prettier` | `prettier --check .` |
| `prettier:fix` | `prettier --write .` |
| `print-configs` | `tsx scripts/print-configs.ts printed-configs` |
| `test` | `echo TODO: add tests in @fluidframework/eslint-config-fluid` |
| `test:mocha` | `mocha "src/test/**/*.test.mts"` |

见 [GitHub 图像](https://github.com/microsoft/FluidFramework) 需要更多关于流体框架和内部软件包的细节.

## 常见问题

### @fluidframework/eslint-config-fluid 是什么？

流体框架可共享的 ESLint 配置

### 如何安装 @fluidframework/eslint-config-fluid？

在项目目录运行 npm install @fluidframework/eslint-config-fluid，或使用 pnpm add / yarn add / bun add。

### @fluidframework/eslint-config-fluid 支持 TypeScript 吗？

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

### @fluidframework/eslint-config-fluid 支持 ESM 还是 CommonJS？

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

### @fluidframework/eslint-config-fluid 需要什么版本的 Node\.js？

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

### @fluidframework/eslint-config-fluid 可以商用吗？

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

### @fluidframework/eslint-config-fluid 的下载量有多少？

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

### @fluidframework/eslint-config-fluid 还在维护吗？

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

