@freighthub/typed-env

中文文档
1.3.4发布于 2019/10/23TypeScriptCommonJS近 30 天下载 2734

运行时可执行的环境可变合同

此软件包已被标记为弃用

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

中文使用文档
文档目录3 节
  1. 使用量
  2. 类型
  3. 示例

已键入env

运行时可执行的环境可变合同.

CircleCI

使用此库制作 确定项目中使用的所有环境变量都是有效的 .

使用量

要使用库,首先宣布由组组成的计划. 一组是 一组相关的环境变量,通常共享一个共同的前缀. 组创建使用 envGroup 函数接受字典 包含可变名称及其类型,例如:

import * as typedEnv from '@freighthub/typed-env'

const statsd = typedEnv.envGroup({
    HOST: NonEmptyString,
    PORT: PortNumber,
    PREFIX: NonEmptyString,
}, 'STATSD')

const schema = typedEnv.envSchema({
    statsd: statsd,
})

在上述例子中 statsd 组将用来装入变量

  • STATSD_HOST
  • STATSD_PORT
  • STATSD_PREFIX

可选 STATSD 前缀作为第二个参数传递到 envGroup。 。 。 . 然后使用 envSchema 接受词典的函数 团体.

为验证环境变量,确保设置(使用) dotenv.config() 以装入.env。 然后使用 Env 的负载如下 :

const env = typedEnv.loadFromEnv(schema)

如果缺少任何变量或不通过类型检查,则会出现例外.

类型

typed-env 提供下列计划类型:

  • Number - 任何号码
  • Integer - 整数
  • PortNumber - 1至65535之间的整数
  • NonEmptyString - 任何长度的非空字符串
  • URI - 经有效URL检查的URI
  • Boolean - 真实或虚假
  • Union - 集合字符串字元,以重新显示变量的可能值

示例

import * as typedEnv from '@freighthub/typed-env'

const schema = typedEnv.envSchema({
    elasticSearch: typedEnv.envGroup({
        URL: typedEnv.types.URI
    }, 'ELASTICSEARCH'),
})

const env = typedEnv.loadFromEnv(schema)
console.log(env.elasticSearch.URL)

版本与发布记录

@freighthub/typed-env 共发布 16 个版本,首次发布于 2018/04/11;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.3.4latest2019/10/237 年前
1.3.32019/04/087 年前
1.3.22019/03/077 年前
1.3.12018/12/137 年前
1.3.02018/08/208 年前
1.2.02018/08/038 年前

关于 @freighthub/typed-env 的常见问题

@freighthub/typed-env 是什么?

运行时可执行的环境可变合同注意:该包已被作者标记为弃用——Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

如何安装 @freighthub/typed-env?

在项目目录运行 npm install @freighthub/typed-env,或使用 pnpm add / yarn add / bun add。

@freighthub/typed-env 支持 TypeScript 吗?

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

@freighthub/typed-env 支持 ESM 还是 CommonJS?

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

@freighthub/typed-env 需要什么版本的 Node.js?

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

@freighthub/typed-env 可以商用吗?

@freighthub/typed-env 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@freighthub/typed-env 的下载量有多少?

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

@freighthub/typed-env 还在维护吗?

最新版本 1.3.4 发布于 2019/10/23(7 年前);至今共发布 16 个版本,其中过去 12 个月发布了 0 个;首次发布于 2018/04/11。作者已将其标记为弃用,新项目建议寻找替代方案。