Middle
ფუნქციურ კომპონენტში შესაძლებელია კომპონენტის მეთოდებზე გარე წვდომის უზრუნველყოფა (გარე «ხელებს» მიცემა)?
sobes.tech AI
პასუხი AI-სგან
React-ის ფუნქციონალურ კომპონენტებში შესაძლებელია კომპონენტის მეთოდებზე გარე წვდომა forwardRef და useImperativeHandle გამოყენებით.
ეს საშუალებას აძლევს 'გადმოსცეთ' რეფერენსი და განსაზღვროთ, რომელი მეთოდები ან თვისებები იქნება გარე წვდომისათვის ხელმისაწვდომი.
მაგალითი:
import React, { useImperativeHandle, forwardRef, useState } from 'react';
const MyComponent = forwardRef((props, ref) => {
const [count, setCount] = useState(0);
useImperativeHandle(ref, () => ({
increment() {
setCount(c => c + 1);
},
reset() {
setCount(0);
}
}));
return <div>სათვლელი: {count}</div>;
});
// გამოყენება
// const ref = React.createRef();
// <MyComponent ref={ref} />
// ref.current.increment();
ამ გზით, გარე კოდი შეუძლია გამოიძახოს კომპონენტის increment და reset მეთოდები.