我正在写一个打字机转换器,想用原始JavaScript代码替换某些表达式。如何做到这一点?
背景:我想将TS类型声明转换为可在运行时使用的验证函数。这受typescript-is的启发。区别在于我想利用现有的库来完成繁重的工作:
EG,如果这是来源:type Foo = { foo: string };
const assertFoo = assertTypeFn<Foo>();
,则转换器将用验证功能替换assertTypeFn<Foo>()
。我已经有它为Foo类型生成JSON模式,并通过ajv-pack
运行它来生成代码。现在,我只需要在输出中嵌入代码即可。