请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

ts中in、keyof的疑问

interface Person {
    id: number;
    name: string;
    age: number;
}

type User = {
  [k in keyof Person]: number | string;
  sex: 'male' | 'female';
}  // 增加一个sex的属性,好像要改成下方交叉类型的方法才可以,是不是只有这种方式才可以实现?

type User1 = {
  [k in keyof Person]: any;
} & {
  sex: 'male' | 'female';
}

const user1:User1 = {
  id: 1,
  name: 'joya',
  age: 20,
  sex: 'male'
}

正在回答 回答被采纳积分+3

1回答

河畔一角 2023-09-19 16:20:43

交叉类型也可以,应该是最简单的。 keyof这种方式也是可以的,主要是获取key值,当做属性,这种方式应用的也很广泛

0 回复 有任何疑惑可以回复我~

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信