Avatar ·

可以在TypeScript中扩展(继承)类型吗?

大家好!我刚开始学习TypeScript,遇到了一个问题。我有一个基础用户数据的interface: ```typescript interface User { id: number; name: string; email: string; } ``` 现在我需要为管理员创建一个type,它拥有普通用户的所有字段,但还有角色(role)和权限级别(permissions)。我知道interface可以通过`extends`扩展,但这对通过`type`声明的类型也适用吗? 我尝试这样做: ```typescript type User = { id: number; name: string; email: string; } type Admin = User & { role: string; permissions: string[]; } ``` 这确实有效,但有人告诉我这并不完全是“扩展”,而是类型交叉。有什么区别?有没有办法像interface那样对type进行经典的继承?提前感谢帮助! <<>>

TypeScript中扩展类型的主要方法

是的,TypeScript中的类型可以扩展