TypeScript 如何根据我提供的参数使我的函数通用?
TypeScript how can I make my function generic based on the argument I provide?
我想编写接受通用参数的通用函数,例如 Data<string, number>
代码如下:
interface Data<T,R> {
a:T;
c:R;
}
function foo(
data: Data<string, number>
){
return test(data)
}
//this func should be generic
function test<?, T extends Data<?, ?>>(
data: T,
): T {
return data
}
有什么想法吗?
给你:
interface Data<T,R> {
a:T;
c:R;
}
function foo(
data: Data<string, number>
){
return test(data)
}
//this func should be generic
function test<T,R>(
data: Data<T,R>,
): Data<T,R> {
return data
}
我想编写接受通用参数的通用函数,例如 Data<string, number>
代码如下:
interface Data<T,R> {
a:T;
c:R;
}
function foo(
data: Data<string, number>
){
return test(data)
}
//this func should be generic
function test<?, T extends Data<?, ?>>(
data: T,
): T {
return data
}
有什么想法吗?
给你:
interface Data<T,R> {
a:T;
c:R;
}
function foo(
data: Data<string, number>
){
return test(data)
}
//this func should be generic
function test<T,R>(
data: Data<T,R>,
): Data<T,R> {
return data
}