@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)
         },
  • Вопрос задан
  • 105 просмотров
Решения вопроса 1
alex4answ
@alex4answ
Как не терять контекст:
1. биндить контекст myFunc.bind(this))
2. Замыкать контекст myFunct = () => {};
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы