首页 > 解决方案 > 按字符串数组选择类型

问题描述

我有类型

type User = {
    firstName: string,
    lastName: string,
    age: string
}

我需要一个函数

const result =  fun<User>(['firstName', 'lastName'])

我需要result的类型是User带有挑选的firstNamelastName。可以用打字稿做吗?

标签: javascripttypescripttyping

解决方案


我认为Typescript 实用程序类型可以帮助您,特别是Pick实用程序类型

type User = {
    firstName: string,
    lastName: string,
    age: string
}

type UserName = Pick<User, "firstName" | "lastName">;

const example: UserName = {
  firstName: "mo",
  lastName: "mo",
  age: "mo" // Typescript error
}

推荐阅读