当前位置: 首页 > 知识库问答 >
问题:

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

丌官利
2023-05-28

请问,Exclude是什么?

我在代码中有看到:

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

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

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

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

共有1个答案

郎河
2023-05-28

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

image.png

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

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

  • type-challenges
 类似资料:
  • 在el-pagination分页组件中,Size子组件渲染函数中使用了el-select,该select中使用了on-input这一属性,但是el-select源码中并没有看到on-input这一prop,请问on-input是什么? el-pagination中的el-select https://github.com/ElemeFE/element/blob/dev/packages/pagi

  • 问题内容: 所以我在这里寻找的是类似PHP的print_r函数。 这样一来,我可以通过查看问题对象的状态来调试脚本。 问题答案: 您实际上是将两种不同的东西混合在一起。 使用,或模块来得到你所感兴趣的是(我用作为一个例子,你可以使用任何对象,而不是)。 随心所欲地打印该词典: 要么 交互式调试器中还可以作为命令提供漂亮的打印:

  • 问题内容: 我在多个循环中多次使用numpy的where函数,但是它变得太慢了。有什么方法可以更快地执行此功能?我读到您应该尝试内联进行循环,并在for循环之前为函数创建局部变量,但是似乎没有什么可以提高速度的。在和有的具有形状。我用得到的瓶颈在哪里手柄,并且where在for循环是一个大的。 问题答案: 事实证明,在这种情况下,纯Python循环比NumPy索引(或对np.where的调用)要快

  • 问题内容: 所以我在这里寻找的是类似PHP的print_r函数。 这样一来,我可以通过查看问题对象的状态来调试脚本。 问题答案: 你要与:

  • 1、Xcode中项目的配置,Project 和 Targets的配置主要是什么意思? 为何不用一个选项来配置呢?而要用2个。 2、请问Targets中的Frameworks and Libraries 的 配置的功能是什么用途的呢?

  • 问题内容: 这段代码的结果为56。 知道里面发生了什么吗?我很困惑。 问题答案: X返回(值+3),而Y返回(值* 2) 给定值为4,这表示。 尽管函数不受范围限制(这意味着您可以安全地“嵌套”函数定义),但是此特定示例容易出错: 1)您不能在调用 之前先调用,因为函数只有执行一次才真正定义。 2)调用两次将导致PHP重新声明function ,从而导致致命错误: 致命错误:无法重新声明y() 两