@exodus/dependency-types

中文文档
2.1.1发布于 2024/11/02MITTypeScriptES Module零依赖近 30 天下载 1.1万

依赖注射定义和节点的类型

中文使用文档

@ exodus/ 依赖类型

本包船类型为依赖性注射定义,节点和特征. 类型与 @exodus/dependency-injection编号 :@exodus/argo 以避免循环依赖.

安装

yarn add @exodus/dependency-types

考虑使用 -D 旗在JS项目或TS项目中,不从本包再出出任何种类.

使用量

如果你正在研究一个打字功能,你应该用 satisfies 表达. 以下是一个定义的例子:

import type { Definition } from '@exodus/dependency-types'

const batmobileDefinition = {
  // the type guarantees auto-complete and the correct shape of the definition
} as const satisfies Definition

避免使用直接类型的注释,因为它会改变属性类型,例如 id 或者说 type 改为 string 而不是他们的具体价值。 它们是静地产生出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出入出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出出 定义可作为特征的一部分使用,或直接在 依赖注射 容器实例.

要输入特性厂,请使用 Feature 类型 :

import type { Feature } from '@exodus/dependency-types'

const batmobileFeature = () =>
  ({
    id: 'batmobile',
    definitions: [],
  }) as const satisfies Feature

一个特性可以注册到 @ exodus/ argo 或者说 @ exodus/ 无头。 。 。 .

在联署材料包中,jsdocs可用于记录以下类型:

/**
 * @typedef {import('@exodus/dependency-types').Definition} Definition
 * @typedef {import('@exodus/dependency-types').Feature} Feature
 */

/** @type {Definition} */
const batmobileDefinition = {
  id: 'batmobile',
  type: 'module',
  // ...
}

const batmobileFeature = () => {
  /** @type {Feature} */
  const feature = {
    id: 'batmobile',
    definitions: [],
  }

  return feature
}

版本与发布记录

@exodus/dependency-types 共发布 5 个版本,首次发布于 2024/06/25;过去 12 个月发布了 0 个版本。

版本发布日期距今
2.1.1latest2024/11/022 年前
2.1.02024/09/262 年前
2.0.02024/07/292 年前
1.1.02024/06/252 年前
1.0.02024/06/252 年前

关于 @exodus/dependency-types 的常见问题

@exodus/dependency-types 是什么?

依赖注射定义和节点的类型

如何安装 @exodus/dependency-types?

在项目目录运行 npm install @exodus/dependency-types,或使用 pnpm add / yarn add / bun add。

@exodus/dependency-types 支持 TypeScript 吗?

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

@exodus/dependency-types 支持 ESM 还是 CommonJS?

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

@exodus/dependency-types 可以商用吗?

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

@exodus/dependency-types 的下载量有多少?

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

@exodus/dependency-types 还在维护吗?

最新版本 2.1.1 发布于 2024/11/02(2 年前);至今共发布 5 个版本,其中过去 12 个月发布了 0 个;首次发布于 2024/06/25。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。