Задать вопрос
@uroot

Как не потерять контекс в React при передачи функции в props?

Из компонента comp1 передаю в компонент comp2 пачку параметров, а из него уже в компонент comp3. Здесь у меня есть глупый компонент, в который я хочу передать часть этих данных.
Но в comp3 я не могу правильно передать функцию в глупый компонент -- теряется this.

comp3 выглядит так:
function comp3({
    items,
    action,
    actionSceneNum
}) {

return(
    <Comp4
         handleRepeatActionClick: () => {
             actionSceneNum(false)
         },
    />
)}


В результате actionSceneNum(false) ничего не делает. Внутри этой функции устанавливается стейт: this.setState({ opened: isOpened })Подскажите как это пофиксит, чтобы стейт утанавливался? Функция с содержимым доходит до comp3, ошибка тут:
handleRepeatActionClick: () => {
             actionSceneNum(false)
         },
  • Вопрос задан
  • 132 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • beONmax
    Профессия Frontend разработчик
    12 месяцев
    Далее
  • beONmax
    Профессия Веб разработчик
    10 месяцев
    Далее
  • Нетология
    Frontend-разработка на React
    10 недель
    Далее
Решения вопроса 1
alex4answ
@alex4answ
Как не терять контекст:
1. биндить контекст myFunc.bind(this))
2. Замыкать контекст myFunct = () => {};
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы