一个Sumor Cloud 工具。
更多文档
配置加载器支持 yaml 和 json 文件。它可以加载目录中的所有文件,并自动将文件转换为指定格式。
npm i @sumor/config --save
需要 Node.JS 版本 16.x 或更高。
由于该包是使用 ES 模块编写的,请在您的package.json
文件中更改以下代码:
{
"type": "module"
}
import { load } from '@sumor/config'
加载目录中的所有文件
import { meta } from '@sumor/config'
const config = await meta(process.cwd(), ['js', 'sql'])
/*
演示目录结构
- root
- car.json
- car.sql
- ship.js
- plane.yml
*/
// 将加载所有配置文件如下
/*
{
car: {
name: 'car',
sql: "..."
},
ship: {
name: 'ship'
js: '<root>/ship.js'
},
plane: {
name: 'plane'
}
}
*/
import { find } from '@sumor/config'
import { findReference } from '@sumor/config'
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": {...}
* }
* */