Код написан с использованием функциональных компонентов React.
При нажатии кнопки в родительском элементе должна срабатывать функция showAlert. Это требование.
В настоящее время родительский компонент childRef.current не может вызвать функцию showAlert(). Я получаю ошибку машинописного текста
Property 'showAlert' does not exist on type 'ForwardRefExoticComponent<RefAttributes<unknown>>'
Родительский функциональный компонент Код
import React, { forwardRef, useRef, useImperativeHandle } from 'react';
import Child from './Child';
export default function App() {
const childRef = useRef<typeof Child>(Child);
return (
<div className="container">
<Child ref={childRef} />
<button
onClick={() => { childRef.current.showAlert() }}
>
Call Function
</button>
</div>
)
}
Дочерний функциональный компонент
import React, { forwardRef, useRef, useImperativeHandle } from 'react';
const Child = forwardRef((props, ref) => {
useImperativeHandle(
ref,
() => ({
showAlert() {
alert("Child Function Called")
console.log('hello world')
}
}),
)
return (
<div>Child Component</div>
)
})
export default Child