11.30.4 • Published 12 months ago

lite-ts-enum v11.30.4

Weekly downloads
-
License
GPL-3.0
Repository
-
Last release
12 months ago

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 - 默认枚举工厂
// 当EnumBuildOption.app无效时 使用该值
const app: string;
const defaultLoadFunc: EnumLoadDelegate<EnumItem>;
// 当EnumBuildOption.app与app相同时 使用defaultLoadFunc 否则otherLoadFunc
const otherLoadFunc: EnumLoadDelegate<EnumItem>;
const enumFactory: EnumFactoryBase = new EnumFactory(app, defaultLoadFunc, otherLoadFunc, {
    枚举名: EnumReducer<EnumItem>,
    ...
});

EnumItem - 单个枚举项

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

EnumLoadDelegate - 枚举加载委托

EnumReducer - 枚举聚合器

getEnumCacheKey - 获取枚举缓存键

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

12 months ago

11.29.4

1 year ago

11.29.3

1 year ago

11.28.3

1 year ago

11.28.2

1 year ago

11.27.2

1 year ago

11.26.2

1 year ago

11.25.2

1 year ago

11.24.2

2 years ago

11.23.2

2 years ago

4.18.2

2 years ago

4.19.2

2 years ago

4.20.2

2 years ago

4.21.2

2 years ago

4.22.2

2 years ago

3.17.2

2 years ago

3.17.1

2 years ago

3.18.2

2 years ago

5.22.2

2 years ago

3.10.1

2 years ago

3.12.1

2 years ago

3.11.1

2 years ago

1.9.1

2 years ago

2.9.1

2 years ago

1.8.1

2 years ago

2.10.1

2 years ago

3.14.1

2 years ago

3.13.1

2 years ago

3.16.1

2 years ago

3.9.1

2 years ago

1.7.1

2 years ago

1.6.1

2 years ago

1.6.0

2 years ago

1.5.0

2 years ago

1.4.0

2 years ago

1.3.0

2 years ago

1.2.0

2 years ago

1.1.0

2 years ago

1.0.0

2 years ago