[英]Get function argument type on function declaration
我正在構建一個自定義 React 掛鈎,它接受一個 object(其中一個屬性是 function)作為參數。
我想獲得該函數的 arguments 的類型定義,我目前可以這樣做:
const { submitHandler, register } = useForm({
handleSubmit: data => {
/*
Everything is ok:
(parameter) data: {
inputs: InputRefs;
e: React.FormEvent<HTMLFormElement>;
}
*/
}
});
但是,我想通過在useForm
參數 object 之外獲取handleSubmit
來拆分代碼,如下所示:
const handleSubmit = data => {
// Parameter 'data' implicitly has an 'any' type, but a better type may be inferred from usage.
};
const { submitHandler, register } = useForm({ handleSubmit });
但是如果我這樣做, data
的類型是“任何”...有沒有辦法獲得該函數的 arguments 的類型定義? 或者唯一正確的解決方案真的只是導出/導入類型?
抱歉,如果這不是明確的或已經解釋過,但我剛剛開始學習 typescript 並且我似乎無法找到正確的關鍵字來找到我所問問題的答案......
謝謝
在此處右鍵單擊handleSubmit
:
const { submitHandler, register } = useForm({
handleSubmit: data => {
/*
Everything is ok:
(parameter) data: {
inputs: InputRefs;
e: React.FormEvent<HTMLFormElement>;
}
*/
}
});
並選擇“轉到定義”。 這將為您提供您需要在此處指定的類型:
const handleSubmit: ${Type} = data => {
// Parameter 'data' implicitly has an 'any' type, but a better type may be inferred from usage.
};
const { submitHandler, register } = useForm({ handleSubmit });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.