@flatfile/cross-env-config

中文文档
0.0.6发布于 2024/05/02ISCTypeScriptESM + CJS零依赖近 30 天下载 136万

在节点或浏览器环境中配置事物的助手

中文使用文档
文档目录7 节
  1. 安装
  2. 基本用途
  3. 设置覆盖
  4. 使用配置登记册
  5. 使用配置工厂
  6. 使用异名
  7. 浏览器和节点.js的安全性

@ flatfile/ cross- env- config

@flatfile/cross-env-config 是一个轻量级,零依赖性的跨环境配置注册,在Node.js和浏览器环境中都有效. 它旨在提供一个一致的方法,在JavaScript的不同类型环境中获取环境变量和配置值.

安装

您可以安装 @flatfile/cross-env-config 使用 npm :

npm install @flatfile/cross-env-config

或与雅尔曰:

yarn add @flatfile/cross-env-config

基本用途

用于 @flatfile/cross-env-config,首先导入 CrossEnvConfig 类 :

import { CrossEnvConfig } from '@flatfile/cross-env-config'

然后,你可以使用 get 获取环境变量值的方法:

const value = CrossEnvConfig.get('MY_ENV_VAR')

这将首先检查是否为此密钥设置了任何覆盖功能, 然后检查附加的配置注册, 附加的配置工厂, 最后检查环境变量 .

设置覆盖

您可以使用 set 方法 :

CrossEnvConfig.set('MY_ENV_VAR', 'my value')

此值将优先于所附的配置注册、配置工厂和环境变量.

使用配置登记册

您可以附加一个对象作为配置注册。 如果您想要将您的配置值存储到环境变量之外的地方, 则此选项是有用的 :

const myConfig = {
  MY_ENV_VAR: 'my value',
  ANOTHER_ENV_VAR: 'another value',
}

CrossEnvConfig.attachConfigRegistry(myConfig)

本登记册中的数值将优先于所附的配置工厂和环境变量,但不能优先于任何上下置值.

使用配置工厂

可以附加一个功能来作为配置厂. 如果您需要动态生成配置值, 这一点是有用的 :

CrossEnvConfig.attachConfigFactory((key) => {
  return `Value for ${key}`
})

该工厂生产的值将优先于环境变量,但不能优先于任何被覆盖或所附的配置登记册.

使用异名

如果对不同的环境有不同的命名构造,则可以使用 alias 将一个密钥映射到另一个密钥的方法 :

CrossEnvConfig.alias('MY_ENV_VAR', 'MY_ALIAS')

在这种情况下,如果 CrossEnvConfig.get('MY_ALIAS') 在覆盖、注册、工厂或环境中找不到“MY ALIAS”的值,它将返回“MY ENV-VAR”的值.

浏览器和节点.js的安全性

@flatfile/cross-env-config 用于在浏览器和Node.js环境中安全工作。 它检查类型 process 尝试访问前的变量 process.env,因此不会在浏览器环境中引起错误 process.env 未定义。 它在尝试使用之前还要检查其注册和工厂的类型,因此如果设置不当就不会被打破.

版本与发布记录

@flatfile/cross-env-config 共发布 5 个版本,首次发布于 2023/05/17;过去 12 个月发布了 0 个版本。

版本发布日期距今
0.0.6latest2024/05/022 年前
0.0.52023/07/183 年前
0.0.42023/06/073 年前
0.0.32023/05/313 年前
0.0.22023/05/173 年前

关于 @flatfile/cross-env-config 的常见问题

@flatfile/cross-env-config 是什么?

在节点或浏览器环境中配置事物的助手

如何安装 @flatfile/cross-env-config?

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

@flatfile/cross-env-config 支持 TypeScript 吗?

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

@flatfile/cross-env-config 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@flatfile/cross-env-config 可以商用吗?

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

@flatfile/cross-env-config 的下载量有多少?

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

@flatfile/cross-env-config 还在维护吗?

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