TS的内置类型-Pick,Omit

简介

今天我们聊聊Typescript的内置工具类型,其中有两个类型颇为有意思。那就是 Pick (选取) Omit (排除)
核心:Pick 与 Omit 从现有类型中得到可复用类型

Pick 作用?

从类型对象中选取指定的属性类型

Omit 作用?

从类型对象中排除指定的属性类型,得到剩余的

案例

例1

 type Person = {
   name: string
   age: number
   gender: 0 | 1
}

// 取出Person中得name,age得到新的类型PickPerson
// type PickPerson = {
//    name: string;
//    age: number;
// }
type PickPerson = Pick<Person, 'name' | 'age'>

// 排除Person中得age,gender得到新的类型OmitPerson
// type OmitPerson = {
//    name: string;
// }
type OmitPerson = Omit<Person, 'age' | 'gender'>

例2

export type User = {
  // token令牌
  token: string
  // 用户ID
  id: string
  // 用户名称
  account: string
  // 手机号
  mobile: string
  // 头像
  avatar: string
}

// 个人信息(在User的基础上排除'token'并添加其他)
type OmitUser = Omit<User, 'token'>
export type UserInfo = OmitUser & {
  /** 关注 */
  likeNumber: number
  /** 收藏 */
  collectionNumber: number
  /** 积分 */
  score: number
  /** 优惠券 */
  couponNumber: number
  orderInfo: {
    /** 待付款 */
    paidNumber: number
    /** 待发货 */
    receivedNumber: number
    /** 待收货 */
    shippedNumber: number
    /** 已完成 */
    finishedNumber: number
  }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值