# @anolilab/rc 中文文档

规范地址：https://npmcn.com/package/%40anolilab/rc/

版本：4\.0\.9
npm 元数据更新时间：2026-09-08T19:55:06.017Z
中文译文更新时间：2026-11-06T05:34:54.834Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40anolilab/rc
原文对照：https://npmcn.com/package/%40anolilab/rc/?lang=original
项目主页：https://github.com/anolilab/semantic-release/tree/main/packages/rc
源码仓库：https://github.com/anolilab/semantic-release

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

- 包体积（解压后）：207 kB，9 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：^22\.14\.0 \|\| \>=24\.10\.0
- 运行依赖：2 个
- 首次发布：2024-05-22T23:07:45.019Z
- 最新版本发布：2026-09-08T19:55:05.635Z
- 近 30 天下载量：109813（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：34（近 12 个月 16 个）

## 中文简介

运行时配置加载器.

## 安装

```sh
npm install @anolilab/rc
```

也可以使用：`pnpm add @anolilab/rc`、`yarn add @anolilab/rc`、`bun add @anolilab/rc`

## README

[![rc](https://npmcn.com/package/%40anolilab/rc/__assets__/package-og.svg)](https://github.com/anolilab/semantic-release)

### 运行时配置加载器.

  

[![typescript-image](https://img.shields.io/badge/Typescript-294E80.svg?style=for-the-badge&logo=typescript)](https://www.typescriptlang.org/) [![mit licence](https://img.shields.io/npm/l/@anolilab/rc?style=for-the-badge)](https://github.com/anolilab/multi-semantic-release/blob/main/LICENSE) [![npm downloads](https://img.shields.io/npm/dm/@anolilab/rc?style=for-the-badge)](https://www.npmjs.com/package/@anolilab/rc) [![Chat](https://img.shields.io/discord/902465130518949899.svg?style=for-the-badge)](https://discord.gg/eajEZvk2PG) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=for-the-badge)](https://github.com/anolilab/multi-semantic-release/blob/main/.github/CONTRIBUTING.md)

* * *

Daniel Bannert的开源工作得到了社区的支持 [GitHub 赞助商](https://github.com/sponsors/prisis)

* * *

## 安装

```sh
npm install @anolilab/rc
```

```sh
yarn add @anolilab/rc
```

```sh
pnpm add @anolilab/rc
```

## 使用量

本模块提供的主要功能为rc. 它允许您从不同来源加载您的应用程序的配置设置 .

```ts
import { rc } from "@anolilab/rc";

const { config, files } = rc("npm");

// returns a merged config object with all found npmrc files and a files list what files where found.
```

### 阿庇语Name

-   名称(字符串):应用程序名. 用于定位配置文件和环境变量.
-   选项(对象,可选): 具有下列属性的对象:
    -   配置( 字符串, 可选) : 特定配置文件的路径 .
    -   cwd(字符串,可选) : 当前要开始搜索配置文件的工作目录 。 默认处理. cwd ().
    -   默认( 对象, 可选) : 默认配置值 .
    -   家( 字符串, 可选) : 要使用的家目录 。 默认为 os. homedir () .
    -   startAt( 字符串, 可选) : 停止搜索配置文件的目录 .

## 标准

鉴于您的应用程序名称( appname) , rc 将查看所有明显的配置位置 .

-   默认对象
-   `/etc/${appname}/config`
-   `/etc/${appname}rc`
-   `$HOME/.config/${appname}/config`
-   `$HOME/.config/${appname}`
-   `$HOME/.${appname}/config`
-   `$HOME/.${appname}rc`
-   a 当地 `.${appname}/config` 财务报告和审定财务报表 `.${appname}rc` 所有发现在寻找 `../../../ ../../ ../ ./` 包括:.
-   如果您通过环境变量 `${appname}_config` 然后从文件
-   如果你通过了选择。 配置变量, 然后从该文件中
-   环境变量的前缀 `${appname}_` 或使用 “ ” 表示嵌入属性  
    _(例如:. `appname_foo__bar__baz` => `foo.bar.baz`(中文(简体) )_

所有被找到的配置源都会被平整成一个对象,按这个确切顺序排列.

## Api 文档

# @anolilab/rc (英语)

## 职能

### 弧( )

```ts
function rc(name, options?): object;
```

定义如下: [指数.ts:193](https://github.com/anolilab/multi-semantic-release/blob/589293f977a51773a6380f8abdc37be2f9e43372/packages/rc/src/index.ts#L193)

从多个来源(默认、配置文件和环境变量)汇总配置 输入单个对象,遵循与原对象相同的分辨率逻辑 `rc` npm 软件包.

解析顺序是(最后最高优先):

1.  `options.defaults` - 呼叫者提供的默认值
2.  通过获取ConfigFiles 发现的配置文件
3.  以 `${name}_` (通过 `__`(中文(简体) )

函数还返回解析时读取的配置文件路径列表 配置 。 在任何已发现的文件上都没有进行突变——它们只被读取.

#### 参数

##### 名称

`string`

应用程序的基名(用于得出env-var前缀和文件名).

##### 选项?

可选行为开关.

###### 装扮?

`string`

明确的配置文件路径, 最终应当合并 .

###### 阴道?

`string`

开始搜索本地配置文件的工作目录 .

###### 默认?

`Record`<`string`, (中文(简体) ), `any`\> 翻译:

默认配置值作为最低优先级.

###### 家吗?

`string`

查找用户级配置文件的主目录 。 默认为当前用户主目录 .

###### 停下来?

`string`

绝对路径,在翻转目录树时作为边界.

#### 回返

`object`

包含最终合并对象 `config` 和命令清单 `files` 考虑过.

##### 配置

```ts
config: Record<string, any>;
```

##### 文件

```ts
files: string[];
```

## 相关

-   [弧形](https://github.com/dominictarr/rc) - 为懒惰者设计的不可配置配置加载器.

## 支持的节点.js版本

这一生态系统中的图书馆尽最大努力追踪 [Node.js的释放时间表](https://github.com/nodejs/release#release-schedule)。 。 。 . 这里 [关于为什么我们认为这很重要的文章](https://medium.com/the-node-js-collection/maintainers-should-consider-following-node-js-release-schedule-ab08ed4de71a)。 。 。 .

## 捐款

如果你愿意帮忙看看 [问题清单](https://github.com/anolilab/semantic-release/issues) 看看我们 [捐款](https://npmcn.com/package/%40anolilab/rc/.github/CONTRIBUTING.md) 准则.

> **说明:** 请注意,该项目已连同《协助者行为守则》一起公布。 通过参加这个项目,你同意遵守其条款.

## 贷项

-   [丹尼尔·班纳特](https://github.com/prisis)
-   [所有贡献者](https://github.com/anolilab/semantic-release/graphs/contributors)

## 在阿诺利拉布制造的

这是一个开源项目,将永远可以自由使用。 如果你觉得这很酷,请 显示它. [阿诺利拉布](https://www.anolilab.com/open-source) 是一个开发与AI工作室。 联系我们 [你好@anolilab.com](mailto:hello@anolilab.com) 如果你需要任何帮助 这些技术 或者只是想打个招呼!

## 许可证

Anolilab rc是开源软件,根据 [麻省理工学院](https://npmcn.com/package/%40anolilab/rc/LICENSE.md)

## 常见问题

### @anolilab/rc 是什么？

运行时配置加载器\.

### 如何安装 @anolilab/rc？

在项目目录运行 npm install @anolilab/rc，或使用 pnpm add / yarn add / bun add。

### @anolilab/rc 支持 TypeScript 吗？

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

### @anolilab/rc 支持 ESM 还是 CommonJS？

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

### @anolilab/rc 需要什么版本的 Node\.js？

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

### @anolilab/rc 可以商用吗？

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

### @anolilab/rc 的下载量有多少？

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

### @anolilab/rc 还在维护吗？

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

