泛型对象

泛型的使用是如果 一个res接口数组结构,然后还有一个datas接口数组结构

res ={

       code: number
        msg: string
        data: {
   
  }

}

res ={

       code: number
         msg: string
        data: {
   
  }

}

他们的第一层对象都是相同的,但第对象里的data数据 是不同的,这时候就可以使用泛型

有两个方法一个是type 一个是interface

type :

type RequestData<T,U>={
       url: string
        method?: 'GET' | 'POST' | 'PUT' | 'DELETE'
        data?: T
        params?: U
}
    type dataTypes = {
        username: string
        paswword: string
    }
    type paramsType = {
        bookname: string
        price: number

    }

    let req1: RequestData<dataTypes, paramsType> = {
        url: "/login",
        data: {
            username: '她',
            paswword: '他'
        },
        params: {
            bookname: '浮生三世',
            price: 200,
        }
    }

interface:

  
  interface resType<T> {
        code: number
        msg: string
        data: T
    }


    interface UserType {
        name: 'zs'; age: number
    }
    interface GoodType {
        id: number
        price: number
        pic: string
        name: string
    }


    let userData: resType<UserType> = {
        code: 200,
        msg: 'success',
        data: {
            name: 'zs',
            age: 20
        }
    }
    let goodData: resType<GoodType> = {
        code: 200,
        msg: 'success',
        data: {
            id: 1,
            price: 200,
            pic: 'xxx',
            name: "好好"
        }
    }

  

posted @ 2024-06-19 19:57  light丶  阅读(8)  评论(0)    收藏  举报