This.props не определено в методе класса

У меня есть компонент с методами render и onPress, описанными ниже...

  onCardPressed(event) {
    console.info(this.props);
    const { data } = this.props;
    console.info(event, data);
  }

  render() {
    const { data } = this.props;
    return (
      <TouchableOpacity
        onPress = {this.onCardPressed}
      >
        <Container style = {{ elevation: 5 }}>
          <SectionTitle>
            This is a
            {` ${data.city} `}
            card
          </SectionTitle>
        </Container>
      </TouchableOpacity>
    );
  }

В этом примере карточка будет правильно отображаться This is a London card, но в методе onPress this.props возвращает undefined.

Как я могу получить доступ к объекту this.props для оценки?

Возможный дубликат это значение равно null в функции (React-Native)

Andrew 03.03.2019 14:43

Это проблема правильной привязки функции к области видимости. Ниже ответ правильный.

buddhiv 03.03.2019 17:51
Умерло ли Create-React-App?
Умерло ли Create-React-App?
В этом документальном фильме React.dev мы исследуем, мертв ли Create React App (CRA) и какое будущее ждет этот популярный фреймворк React.
Освоение React Native: Пошаговое руководство для начинающих
Освоение React Native: Пошаговое руководство для начинающих
React Native - это популярный фреймворк с открытым исходным кодом, используемый для разработки мобильных приложений. Он был разработан компанией...
В чем разница между react native и react ?
В чем разница между react native и react ?
React и React Native - два популярных фреймворка для создания пользовательских интерфейсов, но они предназначены для разных платформ. React - это...
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
Если вы уже умеете работать с React, создание мобильных приложений для iOS и Android - это новое приключение, в котором вы сможете применить свои...
Хуки React: что это такое и как их использовать
Хуки React: что это такое и как их использовать
Хуки React - это мощная функция библиотеки React, которая позволяет разработчикам использовать состояние и другие возможности React без написания...
0
2
136
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете исправить это двумя способами. Аргумент в пользу добавления этих строк в конструктор заключается в том, что новые связанные функции создаются только один раз для каждого экземпляра класса. Вы также можете использовать

onPress = {this.onCardPressed.bind(this)}

или (ES6):

onPress = {() => this.onCardPressed()}

Другие вопросы по теме