реакция-навигация с навигацией возвращает неопределенное - PullRequest
0 голосов
/ 19 февраля 2019

В моём приложении "Реактив натив" у меня есть компонент для заголовка с кнопкой "Назад".Это работает, за исключением случаев, когда я нажимаю кнопку «Назад», и это дает мне эту ошибку: undefined не является объектом (оценивает this.props.navigation)

Так что я следовал документам здесь и попытался использовать withNavigation.Но я все еще получаю ту же ошибку.Что я делаю не так?

import React from 'react'
import { StyleSheet, Text, View, TouchableOpacity } from 'react-native'
import { withNavigation } from 'react-navigation';

const HeaderWithBackBtn = (props) => {
    return (
        <View style={styles.container}>
            {/* Back button */}
            <TouchableOpacity 
                style={{width: 100}} 
                onPress={() => this.props.navigation.goBack()}>
                <Text style={styles.backBtn}>Back</Text>
            </TouchableOpacity>

            <Text style={styles.text}> {props.screen} </Text>

            {/* Placeholder button */}
            <Text style={{width: 100}}></Text>
        </View>
    )
}

const styles = StyleSheet.create({
    ...
});

export default withNavigation(HeaderWithBackBtn);

1 Ответ

0 голосов
/ 19 февраля 2019

Компонент, который вы упаковываете, является функциональным компонентом, поэтому вам нужно получить доступ к вашим реквизитам как props.foo, а не как this.props.foo.

onPress={() => props.navigation.goBack()}>

должно работать нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...