TypeScript. Не получается присвоить тип переменной
const createObligation = useCallback(
data => {
setIsShowNewObligation(false);
dispatch(createObligationThunk(data));
},
[dispatch]
);
const updateObligation = useCallback(
(data): void => {
setInEdit(false);
dispatch(updateObligationThunk(data));
},
[dispatch]
);
const onSubmit: any = item._isNew ? createObligation : updateObligation;
const onCancel: any = item._isNew ? () => setIsShowNewObligation(false) : () => setInEdit(false);
Мне нужно прописать тип для двух констант. Если я пишу
const onSubmit: void = ...
, то появляется ошибка :
TS2322: Type '(data: any) => void' is not assignable to type 'void'.
Что я делаю не так?
Ответы (1 шт):
Автор решения: Grundy
→ Ссылка
В ошибке указан тип, который имеет присваиваемое значение
(data: any) => void
именно его и надо было указывать для переменной:
const onSubmit: (data: any) => void = ...
Сейчас же идет попытка объявить переменную с типом void.