Typescript是否可以动态生成代码?

时间:2018-12-09 14:46:31

标签: typescript dynamic compilation

是否有一种使用Typescript动态创建类的方法,该类可以保存在自己的文件中,以便以后在不同项目中重复使用?

例如,假设我想拥有一个SpecificationParser类,该类可以读取一些JSON规范文件并创建某些实体的表示形式。

然后我想动态创建一个类,该类将采用该表示形式并将其验证为一个builder类,该类将具有从同一表示形式动态创建的具有属性(命名,类型,参数...)的方法。 / p>

spec: {
 a: {
     type: string,
     length: 10
 },
 b: {
     type: number,
     min: 3,
     max: 9
 }
}
          +
          |
          |
          |
 +--------v----------+     +-------------------+     +--------------------+
 |SpecificationParser|     |Representation     |     |DynamicClass        |
 +-------------------+     +-------------------+     +--------------------+
 |Parse              +----->Compile            +----->withA(value: string)|
 |                   |     |                   |     |                    |
 |                   |     |                   |     |withB(value: number)|
 +-------------------+     +-------------------+     +--------------------+

我想要实现的目标:

  • 具有从规范文件动态创建的TS类
  • 那些类可从TS功能(类型检查...)中受益

TS环境中是否有启用此功能的工具?

如果没有,可以/应该使用什么工具?

0 个答案:

没有答案