请问Exclude<> 是属于哪里的功能?是TypeScript内置的的吗?

作者站长头像
站长
· 阅读数 15

请问,Exclude是什么?

我在代码中有看到:

type HP = 'left' | 'center' | 'right'

type VP = 'top' | 'center' | 'bottom'

type ToastProps = {
  position: 
  | Exclude<`${HP}-${VP}`, 'center-center'>
  | 'center'
}

请问:Exclude<> 是属于哪里的功能?是TypeScript的?

回复
1个回答
avatar
test
2024-07-03

是的,Exclude 是 TypeScript 自带的内容,属于类型工具。若是在 VSCode 中按住 Window 键后点击 Exclude,即可观察到对应的实现。

answer image

与其类似的,还有 PickExtractOmit,这些属于高级应用,所以一般的教程没有写(说实话我也还怎么在实战中用过)。

放一个开源项目,其实挺有名的了,在其中刷刷题,可以解锁很多 TypeScript 的新姿势。

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容