【发布时间】:2023-01-16 19:45:47
【问题描述】:
我定义了一个函数并使用 TypeScript 为参数分配类型:
const handleLogin = async (
e: React.FormEvent<EventTarget>,
navigate: NavigateFunction,
link: string,
data: LoginDataType,
setError: React.Dispatch<React.SetStateAction<string>>,
setLoading: React.Dispatch<React.SetStateAction<boolean>>
) => {
//function code
}
现在我已经为参数提供了单独的类型,但我想创建一个 TypeScript 类型,例如:
export type HandleLoginParamTypes = {
e: React.FormEvent<EventTarget>;
navigate: NavigateFunction;
link: string;
data: LoginDataType;
setError: React.Dispatch<React.SetStateAction<string>>;
setLoading: React.Dispatch<React.SetStateAction<boolean>>;
};
现在我想将上述类型分配给函数,以便在函数定义中我不必将类型单独分配给参数。那可能吗?
【问题讨论】:
-
假设你真的不想改变API
handleLogin的参数将是元组;它们是位置性的,而不是对象。在这种情况下是的,有多种方式:tsplay.dev/mL56KW。
标签: typescript