#reactjs #typescript
#reactjs #машинопись
Вопрос:
При вызове функции дочернего компонента из родительского компонента usingref(ref.current?.setTabChange())
.
Свойство ‘setTabChange’ не существует для типа ‘never’.
Использование react typescript.
Родительский компонент :
const ref = useRef();
<Tabs ref = {ref} selectedTabIndex={ data.isevaluation === "true" ? 2 : tabIndex !== -1 ? tabIndex : 0} onTabChange={() => {ref.current?.setTabChange()}} >
Дочерний компонент :
const setTabChange = () => {
setSelectedIndex(selectedTabIndex);
};
useImperativeHandle(ref, () => {
return {
setTabChange: setTabChange
};
});
Комментарии:
1. Можете ли вы включить определение
ref
?2. const ref = useRef(); определение ссылки
Ответ №1:
Как useRef
обычно, когда оно используется с TypeScript, вы должны определить тип ссылочного элемента, например const ref = useRef<Type>();
Итак, чтобы исправить эту ошибку, вы можете определить ref
следующее
const ref = useRef<any>();