繁体   English   中英

如何在 typescript 中用泛型定义 function

[英]how to define function with generic in typescript

我在 typescript 中定义了一个 function api_post_con

export const RequestHandler = {
    api_post_con:(url: string,data: any) => {

    }
}

现在我想要api_post_con function 像这样的通用 function:

export function api_post<T>(url: string,data: any): Promise<T> {
    return fetch(url,{
        method: 'POST',
        headers: {
            'Content-type': 'application/json',
            'x-access-token': 'xxxxx'
        },
        body: JSON.stringify(data),
    })
        .then(response => {
        if (!response.ok) {
            throw new Error(response.statusText)
        }
        return response.json() as Promise<T>
        })
}

如何像返回通用类型的api_post_con function 一样更改api_post function? 我试过这样但没有用:

export const RequestHandler = {
        api_post_con<T>:(url: string,data: any):Promise<T> => {
    
        }
    }

我想你需要的是声明一个 class,而不是一个 object 文字:

export class RequestHandler {
    api_post_con<T>(url: string,data: any):Promise<T> {
        return {} as Promise<T>;
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM