# @apollo/client-codemod-migrate-3-to-4 中文文档

规范地址：https://npmcn.com/package/%40apollo/client-codemod-migrate-3-to-4/

版本：1\.0\.2
npm 元数据更新时间：2026-01-22T17:29:51.154Z
中文译文更新时间：2026-11-06T20:49:40.890Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40apollo/client-codemod-migrate-3-to-4
原文对照：https://npmcn.com/package/%40apollo/client-codemod-migrate-3-to-4/?lang=original
项目主页：https://www.apollographql.com/docs/react/
源码仓库：https://github.com/apollographql/apollo-client

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

- 包体积（解压后）：197 kB，77 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：1 个
- 首次发布：2025-06-27T18:19:49.841Z
- 最新版本发布：2025-08-27T16:41:58.733Z
- 近 30 天下载量：2361（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：7（近 12 个月 0 个）

## 中文简介

阿波罗客户端代码Mod从第3版迁移到第4版

## 安装

```sh
npm install @apollo/client-codemod-migrate-3-to-4
```

也可以使用：`pnpm add @apollo/client-codemod-migrate-3-to-4`、`yarn add @apollo/client-codemod-migrate-3-to-4`、`bun add @apollo/client-codemod-migrate-3-to-4`

## README

## 使用此代码

您可以使用以下命令运行此编码器:

```bash
npx @apollo/client-codemod-migrate-3-to-4 --parser ts file1.ts file2.ts
```

如果您只想要运行特定的代码:

```bash
npx @apollo/client-codemod-migrate-3-to-4 --parser ts file1.ts file2.ts  --codemod imports
```

### 可用的编码模式 :

如果您不手动指定一个代码, 则按默认顺序应用 :

-   `legacyEntryPoints`: 从旧的旧的入关点移出进口 `@apollo/client/main.cjs` 或者说 `@apollo/client/react/react.cjs` 切入点,例如 `@apollo/client` 或者说 `@apollo/client/react`。 。 。 .
-   `imports`: 移动已移动或更名于阿波罗客户端 4. 还酌情将类型移至命名空间导入.
-   `links`: 移动 `split`, (中文(简体) ), `from`, (中文(简体) ), `concat` 财务报告和审定财务报表 `empty` 打开 `ApolloLink` 名称空间, 更改 funtion 链接引用 `createHttpLink(...)` 至等同的阶级`new HttpLink(...)`) (中文(简体) ). 不变 `setContext((operation, prevContext) => {})` 改为 `new ContextLink((prevContext, operation) => {})` - 这需要人工干预,因为回调参数的顺序被翻转,这并非可靠的可编码.
-   `removals`: 将阿波罗客户端 4 中已删除的所有值或类型导入点对准 `@apollo/client/v4-migration` 进入点。 该入境点包含每次移出的背景,经常有移民指示.
-   `clientSetup`: 应用从迁移指南到您的阿波罗客户端设置代码的下列步骤
    -   移动 `uri`, (中文(简体) ), `headers` 财务报告和审定财务报表 `credentials` 页:1 `link` 选项并创建新 `HttpLink` 实例
    -   移动 `name` 财务报告和审定财务报表 `version` 改为 a `clientAwareness` 选项
    -   添加一个 `localState` 带有新选项 `LocalState` 实例,移动 `resolvers`,并删除 `typeDefs` 财务报告和审定财务报表 `fragmentMatcher` 选项
    -   更改 `connectToDevTools` 选项到 `devtools.enabled`
    -   重命名 `disableNetworkFetches` 改为 `prioritizeCacheValues`
    -   若为 `dataMasking` 启用,为全局类型扩展添加模板,以重新覆盖数据类型
    -   添加 `incrementalHandler` 选项,并添加一个全局类型增强模板,从而在自定义链接中按此键入网络响应
    -   删除 `TCacheShape` 全部类型参数 `ApolloClient` 用途(类型和构造器呼叫)

### 针对类型脚本/ TSX 的使用

TypeScript 和 TypeScript-JSX 文件之间有一些语法重叠,所以您可能需要在两个文件扩展名中以平缓方式运行代码mod来避免出错:

```sh
npx @apollo/client-codemod-migrate-3-to-4 --parser ts --ignore-pattern="*.{tsx,d.ts}" file1.ts file2.ts
npx @apollo/client-codemod-migrate-3-to-4 --parser tsx --ignore-pattern="*.ts" file1.ts file2.ts
```

### 使用特定 PR 中的代码

```sh
npx https://pkg.pr.new/apollographql/apollo-client/@apollo/client-codemod-migrate-3-to-4@12733 --parser ts file1.ts file2.ts
```

## 常见问题

### @apollo/client-codemod-migrate-3-to-4 是什么？

阿波罗客户端代码Mod从第3版迁移到第4版

### 如何安装 @apollo/client-codemod-migrate-3-to-4？

在项目目录运行 npm install @apollo/client-codemod-migrate-3-to-4，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 apollo-client-codemod-migrate-3-to-4，可以用 npx apollo-client-codemod-migrate-3-to-4 直接运行。

### @apollo/client-codemod-migrate-3-to-4 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/apollo\_\_client-codemod-migrate-3-to-4 是否存在。

### @apollo/client-codemod-migrate-3-to-4 支持 ESM 还是 CommonJS？

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

### @apollo/client-codemod-migrate-3-to-4 可以商用吗？

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

### @apollo/client-codemod-migrate-3-to-4 的下载量有多少？

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

### @apollo/client-codemod-migrate-3-to-4 还在维护吗？

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

