[英]How to define the return type of currying function?
我有一个柯里化 function 看起来如下:
export interface NewIdeaCardSubmit {
title: string,
description: string,
categories: CategoryValues
}
const applyInputs = (title: string) =>
(description: string) =>
(categories: CategoryValues) => {
return ({
title: title,
description: description,
categories: categories
} as NewIdeaCardSubmit )
};
是否有另一种方法来定义applyInputs
function 而不是as
的返回类型?
不错的是:
const applyInputs = (title: string) => (description: string) => (categories: CategoryValues) => NewIdeaCardSubmit
这是你需要的吗?
export interface NewIdeaCardSubmit {
title: string,
description: string,
categories: CategoryValues
}
const applyInputs = (title: string) =>
(description: string) =>
(categories: CategoryValues): NewIdeaCardSubmit =>
({
title: title,
description: description,
categories: categories
})```
也许首先定义 function 类型:
export interface NewIdeaCardSubmit {
title: string,
description: string,
categories: number[]
}
type ApplyInputs = (title: string) => (description: string) => (categories: number[]) => NewIdeaCardSubmit;
const applyInputs2: ApplyInputs = (title) => (description) => (categories) => ({ title: title, description: description, categories: categories })
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.