Typescript泛型基础2--入参与Partial 、Record结合

88 阅读1分钟

1.泛型与接口结合使用

interface List{
    name:string,
    id:number
}
const getList = <T extends List>(list: T): T => {
    return list
}
getList({ name: 'hh', id:1})

只有name和id属性同时都存在才不会报错
实际中这种基本难遇得

2.入参不确定,泛型的处理

interface List{
    name:string,
    id:number
}
const getList = <T extends List>(list: Partial<T>): Partial<T> => {
    return list
}
getList({ name: 'hh'})

部分入参
甚至更加抽象化

const getList = <T extends Record<string, any>>(list: T): T => {
    
}

Typescript泛型基础1
juejin.cn/editor/draf…
Typescript泛型基础3--返回值处理
juejin.cn/editor/draf…