在TypeScript中,2.2 ......
假设我有一个Person类型:
interface Person {
name: string;
hometown: string;
nickname: string;
}
Run Code Online (Sandbox Code Playgroud)
我想创建一个返回Person的函数,但不需要昵称:
function makePerson(input: ???): Person {
return {...input, nickname: input.nickname || input.name};
}
Run Code Online (Sandbox Code Playgroud)
应该是什么类型的input?我正在寻找一种动态方式来指定一个类型,Person除了nickname可选(nickname?: string | undefined)之外.到目前为止,我发现的最接近的是:
type MakePersonInput = Partial<Person> & {
name: string;
hometown: string;
}
Run Code Online (Sandbox Code Playgroud)
但这并不是我想要的,因为我必须指定所需的所有类型而不是可选的类型.
typescript ×1