在typescript中,可以像这样创建工厂函数,并定义返回类型: function factory1<T>(object: new () => T): T {} 如果我想创建几个不同的对象,我可以将此函数扩展为: function factory2<T, U>(object1: new () => T, object2: new () => U):[T, U] {
return [new object1(),
我正在为Visual代码创建一个扩展。在编辑TypeScript和JavaScript文件时,我根据相关的AST节点的类型增加源代码的特定部分。为了访问所需的类型信息,我使用了createProgram of TypeScript,如下所述:
尽管我可以在一定程度上处理这个问题,但这个解决方案远非最优: TypeScript代码至少编译两次:vscode自己的语言服务器的和