gpt4 book ai didi

javascript - nodejs中的 `rc`文件是什么?

转载 作者:IT老高 更新时间:2023-10-28 21:51:39 25 4
gpt4 key购买 nike

我对典型 Node 应用程序中的各种 rc 文件有一些疑问,例如 .npmrc.babelrc 等。

  • 什么是 rc 文件,我知道它是模块的运行时配置,但还有什么?
  • rc 文件是否必须遵循 .[module]rc 命名约定,还是只是推荐的格式?
  • 支持哪些格式? yaml 和 json 格式我都见过,是不是依赖于模块使用的阅读器?
  • 如何从模块的 Angular 访问 rc 文件?将其命名为 [module]rc 是否会使其自动可供模块使用?如果有,它将在哪里提供?
  • 或者该模块是否应该像使用该模块的应用程序中的任何其他文件一样访问该文件,并期望它采用可理解的格式? (这是我现在正在做的,json格式)
  • 我还看到有人需要 package.json 来加载配置。推荐哪个,package.json 还是 rc 文件?
  • 此外,它与带有 module.exportsgulpfile.js 之类的 javascript 文件有何不同? (我是说推荐的意思,当然知道js和rc文件的区别和优势)

每次我在谷歌搜索时,我都会找到 herehere ,这是一个读取 rc 文件的工具,但没有解释它们是什么或它们是如何构造和/或连接到模块的。

任何见解都会非常有用。谢谢

最佳答案

所以首先,问得好。

rc dotfiles 是配置文件,它们的用途、格式和整体含义可能会有所不同。您可以创建 .[whatever name you like]rc 文件来通知您碰巧创建的任何包(前提是另一个包不是在寻找同一个包)。通常,它们对于某些作用于您的源代码并且需要针对您的项目进行一些调整的工具很有用。我的理解是,过去几年在 UNIX 系统中也有类似的文件发挥了重要作用,但这个想法已经停滞不前。

简而言之:

  • 它们并不特定于 Node 。
  • 它们只是另一个文件
  • 就格式而言,它们几乎可以是任何东西——这取决于您将使用什么来解析和读取它们。 YAML、JSON 和 ini 可能是最常见的(至少我见过)。
  • 在大多数情况下,它们似乎遵循约定 .[program or binary name]rc
  • package.json 文件可以包含适用于配置的外部元数据,这仅取决于您的项目是否期望 .rc 文件或期望它在 package.json(或两者兼有,例如 babel)

另见:

举个非常简单的例子:

假设你想阅读这个使用 JSON 编码的 .foorc 文件:

{
"cool": true
}

你可以这样做:

'use strict';
const fs = require('fs');
fs.readFile('./.foorc', 'utf8', (err, data) => {
if (err) throw new Error(err);
console.log(JSON.parse(data));
})

有很多更好的方法可以做到这一点,但您可以轻松编写自己的方法或找到支持 YAML、ini 等解析并提供 API 的其他一些不错的部分的包(例如, rc)

关于javascript - nodejs中的 `rc`文件是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36212256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com