简介
config-keeper 是一个 Node.js 应用程序的配置管理工具。它可以轻松地管理配置文件,并根据不同的环境加载不同的配置文件。此外,它还支持从环境变量、命令行参数以及配置文件中获取配置数据。
安装
使用 npm 安装 config-keeper:
npm install config-keeper --save
用法
基本用法
在应用程序的入口文件中,加载 config-keeper 并传入 options 对象:
const configKeeper = require('config-keeper')({ configPath: 'config', env: process.env.NODE_ENV || 'development' }); console.log(configKeeper.get('db.host'));
配置文件
config-keeper 支持加载 JSON 和 YAML 配置文件。默认情况下,在 config 文件夹下寻找配置文件。例如,如果环境变量 NODE_ENV 的值为 development,则 config-keeper 会加载文件 config/development.json 或者 config/development.yaml。
环境变量
config-keeper 同时可以从环境变量中获取配置数据:
console.log(configKeeper.get('db.host', 'MYSQL_HOST'));
这将从环境变量 MYSQL_HOST 中获取 db.host 的值,如果不存在则返回 undefined。
命令行参数
config-keeper 还支持从命令行参数中获取配置数据:
console.log(configKeeper.get('db.host', { argv: 'mysql-host' }));
这将从命令行参数 --mysql-host 中获取 db.host 的值,如果不存在则返回 undefined。
其他选项
config-keeper 还支持其他选项,例如:
configPath
:配置文件路径,默认为 config。env
:当前环境名称,默认为 development。loadBuiltin
:是否加载内置配置文件,默认为 true。logLevel
:日志级别:error、warn、info、debug、trace,默认为 info。
示例代码
以下是一个使用 config-keeper 加载配置文件和环境变量的示例代码:
const configKeeper = require('config-keeper')({ configPath: 'config', env: process.env.NODE_ENV || 'development', logLevel: 'debug' }); console.log(configKeeper.get('db.host', 'MYSQL_HOST'));
总结
config-keeper 是一个方便的 Node.js 应用程序配置管理工具,它可以轻松地从多种来源获取配置数据,包括配置文件、环境变量和命令行参数。它易于使用,并提供了多种选项,以满足不同应用场景的需求。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600551fc81e8991b448cf827