Довольно простой вопрос. Я пришел из Qt / C ++ фона, и поэтому я считаю хорошей практикой быть явной, поэтому
protected sanityCheck() : void { ... } // Braced and Typepilled
protected sanityCheck() { ... } // Extremely stupid and dangerous
Хорошо, как мне быть явным с этим:
protected checkRadio( index : number ) : ????? // "Function" type does not work
{
return (event: React.MouseEvent) =>
{
let radioIndex : HTMLInputElement
= document.getElementsByName(this.question())[index]
as HTMLInputElement;
radioIndex.checked = true;
event.preventDefault();
}
}
Большинство типов, которые я пробовал, приводило к
Type 'void' is not assignable to type
'((event: MouseEvent<HTMLLIElement, MouseEvent>) => void) | undefined'. TS2322
Когда я проверял документацию, ничего не говорится. Когда я проверил typeof, он просто сказал function
. У меня складывается впечатление, что я могу определить свой собственный тип, но я хочу одноразовое решение с одним типом, которое будет как можно более конкретным.
Хотя лучшее, что я могу сделать на данный момент, это any
, которыйнаименее конкретный тип.
Итак, какие самые конкретные и явные типы я могу использовать для этой функции?
Спасибо.