[英]Why the built-in type Partial of Typescript cannot use Interface
众所周知,TS内部集成了一些复杂的类型,比如Partial
type Partial<T> = {
[P in keyof T]?: T[P];
};
但是当我像这样使用接口定义Partial
时出现了很多错误
interface TPartial<T> {
[P in keyof T]?: T[P];
};
也许我对interface
和type
的理解还不够。 我一直认为它们可以用来定义object
任何人都可以解释为什么它不能在这里使用
您展示的实用程序类型Partial<Type>
是所谓的映射类型的示例,映射类型是使用类型别名定义的。 它并不比这更复杂:这就是映射类型的工作方式——您不能使用接口来定义它们。
为了更好地理解别名和接口之间的差异,您可以研究 TypeScript 手册中名为Differences Between Type Aliases and Interfaces的部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.