配置

一个Sumor Cloud工具。
更多文档
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)

findReference

* root: string - 根目录
* references: array - 引用文件扩展名 (vue, js)
* 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 { findReference } from '@sumor/config'

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