lite-ts-enum
TypeScript icon, indicating that this package has built-in type declarations

11.28.3 • Public • Published

Version

代码

Enum - 枚举对象

const enumerator: Enum;

// 获取所有枚举项(字典)
const res = await enumerator.allItem;
// res = { 枚举编号: 枚举数据, ... }

// 获取所有枚举(数组)
const res = await enumerator.items;
// res = [枚举数据, ... ]

// 获取单个枚举项
const res = await enumerator.get(r => r.value == 2);

// 获取枚举聚合
const res = await enumerator.getReduce<ValueTypeRewardAddition>(ValueTypeRewardAddition.ctor);

EnumFactoryBase - 枚举工厂

const enumFactory: EnumFactoryBase;

class XxxData extends EnumItem {}

const enum_ = enumFactory.build<XxxData>({
    app: 应用名,
    // name和typer二选一
    name: 枚举名,
    projectNo: 项目编号,
    typer: XxxData,
});
  • EnumFactory - 默认枚举工厂
const enumFactory: EnumFactoryBase = new EnumFactory('应用(当EnumBuildOption.app无效时 使用该值)', {
    枚举名: EnumLoadDelegate<EnumItem>,
    ...
}, {
    枚举名: EnumReducer<EnumItem>,
    ...
});

EnumItem - 单个枚举项

class EnumItem {
    // 枚举编号(默认从1开始)
    public value: number;
    // 枚举键(唯一键)
    public key?: string;
    // 枚举文本(枚举项名)
    public text?: string;
}
  • ProjectData - 项目枚举

EnumLoadDelegate - 枚举加载委托

EnumReducer - 枚举聚合器

getEnumCacheKey - 获取枚举缓存键

const key = getEnumCacheKey(项目编号, '应用', '枚举名');

Readme

Keywords

Package Sidebar

Install

npm i lite-ts-enum

Weekly Downloads

13

Version

11.28.3

License

GPL-3.0

Unpacked Size

49.3 kB

Total Files

23

Last publish

Collaborators

  • ahl5esoft