配置

一个 Sumor Cloud 工具。
更多文档
配置加载器支持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'])
// 将加载根目录中的所有*.entity.yml或*.entity.json,这些文件与*.vue或*.js具有相同名称
/*
 * 示例:
 *   car.entity.yml, bike.entity.json
 *   car.vue, bike.js
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */