Избавиться от опциональности параметров в типах хендлеров
Heymdall opened this issue · comments
На данный момент у всех хенделеров в библиотеке типы параметров описаны как опциональные, что создает проблемы при включении strictFunctionTypes
Ожидаемое поведение
Такой вариант будет работать если выключен strictFunctionTypes.
const handleClick = (event: React.MouseEvent) => event.preventDefault;
return <Link onClick={ handleClick } />
Актуальное поведение
А вот если его включить - приходится писать так.
const handleClick = (event?: React.MouseEvent) => {
if (event) {
event.preventDefault();
}
};
return <Link onClick={ handleClick } />
при этом сами параметры вовсе не являются опциональными, они будут переданы. Проблема просто в тайпингах.
Возможное решение
Решение - убрать ?
в типах тех хендлеров, в которых аргументы передаются всегда.