配置

Config Loader 支持加载 yaml 和 json 文件。它可以加载目录中的所有文件。并自动将文件转换为指定的格式。

CI Test Coverage Audit

安装

npm i @sumor/config --save

先决条件

Node.JS 版本

需要 Node.JS 版本 16.x 或以上

需要 Node.JS ES 模块

由于此包是使用 ES 模块编写的,请修改您 package.json 文件中的以下代码:

{
  "type": "module"
}

用法

方法

load

find

* root: string - 根目录
* category: string - 类别名
* ext: string - 要转换的文件扩展名 (yml, json)

加载配置文件

import { load } from '@sumor/config'

const config1 = await load(process.cwd(), 'demo')
// 将在根目录加载 demo.yml 或 demo.json

const config2 = await load(process.cwd(), 'demo', 'yaml')
// 将在根目录加载 demo.yml 或 demo.json,并将其转换为 yaml 格式文件

查找配置文件

import { find } from '@sumor/config'

const config = await find(process.cwd(), 'entity')
// 将在根目录加载所有 *.entity.yml 或 *.entity.json 文件
/*
 * 示例:
 *   car.entity.yml, bike.entity.json
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */

从其他文件查找配置文件

例如 .vue, .js 文件,它们有相同名称的配置文件

import { find } from '@sumor/config'

const config = await find(process.cwd(), 'entity', null, ['vue', 'js'])
// 将在根目录加载所有与 *.vue 或 *.js 有相同名称的 *.entity.yml 或 *.entity.json 文件
/*
 * 示例:
 *   car.entity.yml, bike.entity.json
 *   car.vue, bike.js
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */