Sobes.tech
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 методдорун чакыра алат.