# @effected/pnpm-plugin-effected 中文文档

规范地址：https://npmcn.com/package/%40effected/pnpm-plugin-effected/

版本：0\.26\.5
npm 元数据更新时间：2026-11-13T16:09:32.580Z
中文译文更新时间：2026-11-14T02:03:58.652Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：55.1 kB，8 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=24\.11\.0
- 运行依赖：0 个
- 首次发布：2026-10-31T20:16:58.736Z
- 最新版本发布：2026-11-13T16:09:32.190Z
- 近 30 天下载量：2575（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 13 个）

## 中文简介

pnpm 配置依赖,用于整个效应生态系统的集中目录管理.

## 安装

```sh
npm install @effected/pnpm-plugin-effected
```

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

## README

# @ effect/pnpm- plugin 受影响

[![npm](https://img.shields.io/npm/v/@effected%2Fpnpm-plugin-effected?label=npm&color=cb3837)](https://www.npmjs.com/package/@effected/pnpm-plugin-effected) [![License: MIT](https://img.shields.io/badge/License-MIT-4caf50.svg)](https://opensource.org/licenses/MIT) [![Node.js %3E%3D24.11.0](https://img.shields.io/badge/Node.js-%3E%3D24.11.0-5fa04e.svg)](https://nodejs.org/) [![TypeScript 7.0](https://img.shields.io/badge/TypeScript-7.0-3178c6.svg)](https://www.typescriptlang.org/) [![pnpm](https://img.shields.io/badge/pnpm-%3E%3D11-f69220.svg)](https://pnpm.io/)

一个小时 [配置依赖](https://pnpm.io/config-dependencies) 将效果生态系统和 `@effected/*` 包通过一个 [pnpm 目录](https://pnpm.io/catalogs), (中文(简体) ), `effected`然后把工具箱的积木链接通一下, `effected:build`覆盖 `effect` 联 合 国 `@effect/*` 一号卫星 [效果 v4](https://effect.website/) 未成年人, `@effect/tsgo` 在自己的独立针, 和每一个出版 `@effected/*` 除了这个包。 安装一次 `catalog:effected` 用于您工作空间中的每个软件包,无论是依赖还是对等范围.

> **预`1.0.0`。 。 。 .** 此软件包是 `@effected/*` 在稳定基础上建造的工具包 效应v4(`effect` `~4.1.0`) 并仍在 `0.x` 发展。 稳定效果 制作一个工具箱 `1.0.0` 可能,不是自动的。 为了保持你的 `effect` 财务报告和审定财务报表 `@effect/*` 该工具包在线上构建和测试、安装 此软件包作为配置依赖( 下方) .
> 
> **稳定:不稳定.** 此软件包的 API 表面尚未考虑 完成并可能改变 `0.x` 释放 定一个确切的版本——甚至 标记软件包 _稳定_ 在此之前 `1.0.0` 可以引入突破性更改 和精确的针 变成一个类型检查错误 而不是一个 跑步时间惊喜。 完全政策: [释放策略](https://github.com/spencerbeggs/effected#release-strategy)。 。 。 .

## 为什么 @ epnpm- plugin 受到影响

效应船作为一打必须一起移动的包裹. 用手把它绑住,针会飘来飘去: `@effect/*` 组合垫款,其 `effect` 端点不再匹配您安装的核心, 失败将显示为没有触及到的文件的类型错误, 或是导入时的崩溃 。 把针放在一个地方是整个想法,pnpm目录是机制—— `catalog:effected` 在一个显示器中,而不是一个版本字符串,和一个在指针推进时会移动的地方.

这个 `@effected/*` 工具箱有同样的问题 在更锋利的边缘。 每个套装都打开了 `0.x`当护身符没有穿过未成年人, 所以手写 `^0.14.0` 停止解析当前切换包时的任何内容 `0.15.0`分布在十几个货单上 这些地盘静而独立地腐烂. `catalog:effected` 将区域替换为名称,升级配置依赖性会同时移动整个工具包表面.

一个目录只达到你写的清单 您的从属关系名称 `effect` 和它的卫星, 和护身符可以配对 卫星与它没有建造的核心。 插件覆盖了整个图表的空白。 这是一个方便,而不是要求——它包罗万象 [实际](https://github.com/spencerbeggs/effected) 因此,一个想要同样的学科的项目可以采用它而不是重建它。 它运送一个目录和一个pnpmfile,而不是一个代码API.

## 安装

添加成一个 **配置依赖** ——不是经常依赖. 配置依赖在树的其他部分前被安装,这就使得它们为安装提供目录和钩子如下:

```bash
pnpm add --config @effected/pnpm-plugin-effected
```

要求pnpm 11或更新,和Node.js QQ24.11.0. 没有 npm 或 bun 等同: 配置依赖和目录为 pnpm 特性 .

命令将软件包写入您的 `pnpm-workspace.yaml` 在简单版本中:

```yaml
configDependencies:
  "@effected/pnpm-plugin-effected": <version>
```

平正的版本是"犬形". 仍然很荣幸 `+sha512-…` 如果有完整后缀, 则在条目上设置后缀, 但您不需要添加.

如果工作空间设定 `minimumReleaseAge`,将插件添加到 `minimumReleaseAgeExclude` 所以一个只有几个小时的版本仍然安装:

```yaml
minimumReleaseAgeExclude:
  - "@effected/pnpm-plugin-effected"
```

## 使用量

一旦安装, `catalog:effected` 用于工作空间中的每个软件包。 参考自 `package.json` 取代版本范围——在每个依赖领域.

应用程序 :

```json
{
  "dependencies": {
    "effect": "catalog:effected",
    "@effect/ai-openai": "catalog:effected",
    "@effected/workspaces": "catalog:effected"
  }
}
```

图书馆从 `effected` 及其同行从 `effected:peers`数字 :

```json
{
  "devDependencies": {
    "effect": "catalog:effected",
    "@effected/workspaces": "catalog:effected"
  },
  "peerDependencies": {
    "effect": "catalog:effected:peers",
    "@effected/workspaces": "catalog:effected:peers"
  }
}
```

pnpm 重写 `catalog:` 混凝土组装时的示意图,所以登记簿上的是什么是普通的表态. 下游不需要这个插件, 或是 pnpm 。 包装的同龄人广告 服务目录的价值, 所以拼写同龄人通过 `:peers` 目录 : `catalog:effected:peers` 包装 `effect: ~4.<minor>.0` 和每个 `@effected/*` 软件包在 `^0.<minor>.0`。对等码拼写 `catalog:effected` 将包装精确的 Effect 版本的插件针 并让每个消费者都到那个补丁。 如果一个库需要更广泛的对等器,请用手写出这个范围在自己的表单上.

## 飞来飞去

| 条目 | 范围 | 页:1 |
| --- | --- | --- |
| `effect` 和每个 `@effect/*` 软件包 | 插件的精确版本 :`4.<minor>.<patch>`(三); `~4.<minor>.0` 内 `effected:peers` | 新的效果发布随新插件发布而来, 绝不通过范围 |
| `@effect/tsgo` | 它的精确的针 自己 `0.x` 线条 | 独立版本 `effect` |
| 每一份出版物 `@effected/*` 软件包 | 现时释放,加护身符; 下至 `^0.<minor>.0` 内 `effected:peers` | 打开 `0.x` 护身符会把未成年人钉上 |

每个目录都有 `:peers` 双胞胎, `effected:peers` 财务报告和审定财务报表 `effected:build:peers`,将每个射程都铺到未成年人 `peerDependencies`。 。 。 . `catalog:effect` 财务报告和审定财务报表 `catalog:effect:peers` 不存在, 并且有一个名称仍然无法安装 。 您在目录中声明自己 的条目, 插件服务胜过同一套件的插件, 所以 `catalogs.effected` 屏蔽您左侧较早的导出 `pnpm-workspace.yaml` 保留其旧范围,直到再出口或删除为止。 你的其他目录被保存.

### 建筑目录

第二个目录, `effected:build`,保持构建链 [`effected package build`](https://github.com/spencerbeggs/effected/tree/main/packages/plugin) 运行和工具链

| 条目 | 作用 |
| --- | --- |
| `tsdown`, (中文(简体) ), `@tsdown/exe`, (中文(简体) ), `rolldown`, (中文(简体) ), `rolldown-plugin-dts` | 捆绑和申报证 |
| `@microsoft/api-extractor`, (中文(简体) ), `@microsoft/api-extractor-model`, (中文(简体) ), `@microsoft/tsdoc`, (中文(简体) ), `@microsoft/tsdoc-config` | a. 评估报告与TSDoc |
| `typescript`, (中文(简体) ), `@types/node`, (中文(简体) ), `tsx` | 编译器、节点类型和 TypeScript 驱动程序 |
| `react`, (中文(简体) ), `react-dom`, (中文(简体) ), `@types/react`, (中文(简体) ), `@types/react-dom`, (中文(简体) ), `@rsbuild/core` | 反应及其类型,以及 Rsbuild |

用工具包构建的寄存器 `catalog:effected:build` 对于这些,所以它的建筑链 是那个装箱 建造和测试用:

```json
{
  "devDependencies": {
    "@effected/plugin": "catalog:effected",
    "typescript": "catalog:effected:build",
    "@types/node": "catalog:effected:build"
  }
}
```

此目录不会产生任何覆盖: 它会设定您的列表名称, 而不是其它 。 pnpmfile 也允许 TypeScript 7.1 在 `tsdown`,个人 `typescript` 同行不承认.

`@effected/pnpm-plugin-effected` 它本身被刻意地从目录中遗漏了出来——这是目录内的船只的包裹,列出它会让每个目录重写出带目录的包裹.

它也运载了pnpmfile,pnpm从配置依赖自动加载. 没有进口和呼叫。 除了目录, pnpmfile 将这些设置应用于每个消费者:

-   **效果家族覆盖 :** 单人重置 `effect` 财务报告和审定财务报表 `@effect/*` 软件包, `"<name>@^4.0.0": "<catalog version>"`从目录中推导出来 所以它随它而来 还有一个用于 `@effect/tsgo` 在自己的线路。 在你的图表中, 包括你的依赖性名称, 都保留着每个副本, 到目录版本, 所以卫星永远不能配对 核心 它不是它建造的。 永远不要手写这些针.
-   **排除释放年龄:** `effect`, (中文(简体) ), `@effect/*` 财务报告和审定财务报表 `@effect/tsgo-*` 豁免 `minimumReleaseAge`,所以一个固定效应释放 仅几小时的旧.
-   **范围覆盖 :** `@effect/platform-node-shared` 刻入其父版本 `@effect/platform-node@4.0.0-rc.117` 财务报告和审定财务报表 `@effect/platform-node@4.0.0-rc.118`新的决心将它与为另一种人建造的更新的工具结合起来 `effect`,在启动时崩溃工具。 每个超接只应用在自己的母程序下,所以一个稳定的安装从不被触碰.

属于你的 `overrides` 被保存在插件旁边。 如果您自己设置了相同的选择器, 您的值将获胜 .

当套件向外推进时,效果条目会移动。 套件条目随着套件的放行而自动重建,因此每套新版本的本套件都携带了套件的当前版本;升级了配置依赖性是消费者如何取出:

```bash
pnpm update --config @effected/pnpm-plugin-effected
pnpm install
# every catalog:effected specifier in the workspace re-resolves to the new pins
```

## 许可证

[麻省理工学院](https://npmcn.com/package/%40effected/pnpm-plugin-effected/LICENSE)

## 常见问题

### @effected/pnpm-plugin-effected 是什么？

pnpm 配置依赖,用于整个效应生态系统的集中目录管理\.

### 如何安装 @effected/pnpm-plugin-effected？

在项目目录运行 npm install @effected/pnpm-plugin-effected，或使用 pnpm add / yarn add / bun add。

### @effected/pnpm-plugin-effected 支持 TypeScript 吗？

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

### @effected/pnpm-plugin-effected 支持 ESM 还是 CommonJS？

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

### @effected/pnpm-plugin-effected 需要什么版本的 Node\.js？

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

### @effected/pnpm-plugin-effected 可以商用吗？

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

### @effected/pnpm-plugin-effected 的下载量有多少？

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

### @effected/pnpm-plugin-effected 还在维护吗？

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

