跳转到内容

实现 Pick

4 · 实现 Pick

Description

从类型 T 中选择出属性 K,构造成一个新的类型。

Example

interface Todo {
title: string
description: string
completed: boolean
}
type TodoPreview = MyPick<Todo, 'title' | 'completed'>
const todo: TodoPreview = {
title: 'Clean room',
completed: false,
}

Answer

type MyPick<T, K extends keyof T> = { [P in K]: T[P] }