在TypeScript中,我有一个函数,它接受一个泛型对象,其值都是泛型类的实例(在下面的代码示例中是MyClass<T>)。我希望返回值是一个具有相同键的对象,但其类型是对应的T类型。使用类型记录的infer关键字,我已经让它工作了;但是,如果T中的一个是与undefined的联合,那么undefined似乎就被删除了。
如何使undefined传递到返回对象中相应键的类型?above is inferred to be
我不明白为什么TypeScript允许在没有指定实际泛型类型参数的情况下实例化泛型类?在下面的示例中,类Foo有一个泛型类型参数T。在行const foo = new Foo()中,可以创建一个新的foo对象,而不必指定泛型类型参数。foo的类型为Foo<unknown>,bar的类型为valueType<unknown>