# @ddd-framework/collections 中文文档

规范地址：https://npmcn.com/package/%40ddd-framework/collections/

版本：1\.1\.4
npm 元数据更新时间：2024-08-07T04:32:47.415Z
中文译文更新时间：2026-11-11T18:02:46.120Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：31.9 kB，14 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：@ddd-framework/core ^1\.0\.0
- 首次发布：2023-07-16T06:19:58.683Z
- 最新版本发布：2024-08-07T04:32:47.228Z
- 近 30 天下载量：29762（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：8（近 12 个月 0 个）

## 中文简介

> `@ddd-framework/collections` 是一个在综合 `@ddd-framework` 框架。 它提供专门为Node.js设计的域驱动设计(DDD)背景下管理收藏的课目.

## 安装

```sh
npm install @ddd-framework/collections
```

也可以使用：`pnpm add @ddd-framework/collections`、`yarn add @ddd-framework/collections`、`bun add @ddd-framework/collections`

## README

# @ddd-框架/收集

> `@ddd-framework/collections` 是一个在综合 `@ddd-framework` 框架。 它提供专门为Node.js设计的域驱动设计(DDD)背景下管理收藏的课目.

## 说明

这个 `@ddd-framework/collections` 软件包扩展函数 `@ddd-framework` 提供与收藏有关的额外课程。 这些公用设施有助于以面向DDD的方式在Node.js应用中管理和管理收集.

## 文档

详细信息 `@ddd-framework/collections`请参考 [正式文件](https://rmolinamir.github.io/ddd-framework/modules/collections.html)。 。 。 .

## 安装

要安装 `@ddd-framework/collections`,确保您具备下列先决条件:

-   节点.js 稳定版本
-   [小时](https://pnpm.io/)

一旦设置了先决条件,就运行以下命令:

```shell
$ pnpm i @ddd-framework/collections
...
```

这将安装 `@ddd-framework/collections` 软件包及其依赖性.

## 特征

这个 `@ddd-framework/collections` 软件包提供以下特性:

-   **实体合并**编号: `EntityCollection` class 代表域模型中实体的集合。 它为管理和访问收藏中的实体提供了方便的方法.
-   **列表**编号: `List` class 是不可改变的指令集,允许存储和操纵元素。 它提供各种操作,如从列表中添加,去除,取回元素,等等.

通过利用来自 `@ddd-framework/collections` 软件包,开发者可以按照DDD原则有效管理实体的集合并列出其Node.js应用中的列表.

## 使用量

用于 `@ddd-framework/core`,从软件包中导入想要的类、接口或函数。 例如:

```typescript
import {
  Entity,
  EntityCollection,
  EntityId,
  Identity,
  IllegalStateException
} from '@ddd-framework/core';

class UserId extends Identity {
  protected validate(): void {
    if (!this.value) throw new IllegalStateException('id is required');
  }
}

class User extends Entity {
  @EntityId()
  public id: UserId;

  constructor(id: UserId) {
    super();
    this.id = id;
  }
}

const user = new User(new UserId(faker.string.uuid()));

const collection = new EntityCollection<User>();

expect(collection.add(user).contains(user)).toBeTruthy();
```

## 许可证

`@ddd-framework/collections` 以麻省理工学院的许可证发放。 随你随意定制吧 更适合你的需要.

## 常见问题

### @ddd-framework/collections 是什么？

@ddd-framework/collections 是一个在综合 @ddd-framework 框架。 它提供专门为Node\.js设计的域驱动设计\(DDD\)背景下管理收藏的课目\.

### 如何安装 @ddd-framework/collections？

在项目目录运行 npm install @ddd-framework/collections，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@ddd-framework/core（^1\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @ddd-framework/collections 支持 TypeScript 吗？

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

### @ddd-framework/collections 支持 ESM 还是 CommonJS？

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

### @ddd-framework/collections 可以商用吗？

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

### @ddd-framework/collections 的下载量有多少？

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

### @ddd-framework/collections 还在维护吗？

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

