передача параметров во вложенный TabNavigator - PullRequest
0 голосов
/ 02 июля 2018

У меня есть StackNavigator с вложенным TabNavigator в нем, и я перехожу к VisitUserPageNew и получаю параметры на первом отображаемом экране, который UserPage, и это работает. Но затем я пытаюсь передать параметры вложенному UserSection, и он возвращает undefined

это навигационный вызов:

this.props.navigation.navigate('VisitUserPageNew',{
  visitorProps: {
    visitorNickName:this.props.linkPublisherNickName,
    visitor:true
  }
})

это мои компоненты:

class UserPage extends Component {
    visitorProps = this.props.navigation.getParam('visitorProps')

    render() {
        console.log(this.visitorProps) // return the object I need
        return(
            <View style={styles.container}>
                <Text>Text</Text>
                <View  style={{width:'100%',height:'100%',flex:1}}>
                    <UserSection
                        visitorProps={this.visitorProps}
                    />
                </View>    
            </View> 
        )
    }
} 

export default class UserLinks extends Component {
    render() {
        console.log(this.props.visitorProps) // return undefined
        return <View/>;
    }
}

export default class UserBookmarks extends Component {
    render() {
        console.log(this.props.visitorProps) // return undefined
        return <View/>;
    }
}  

это структура маршрутов:

export const UserSection = createMaterialTopTabNavigator({
    UserFeed: {
        screen: UserLinks,
    },
    Saved: {
        screen: UserBookmarks,
    },
})

export const UserPageNew = StackNavigator({
    UserSectionPage: {
        screen: UserPage
    },
    UserSection: {
        screen: UserSection
    },
})

export const Home = StackNavigator({
    Main: {
        screen: Main
    }, 
    VisitUserPageNew: {
        screen: UserPageNew
    },
})

так что передача параметров на первый экран прекрасно работает Но когда я хочу продолжать передавать те же самые параметры вложенному UserSection, это терпит неудачу. Я также пытался дозвониться до visitorProps = this.props.navigation.getParam('visitorProps') внутри UserBookmarks и UserLinks, но результат был тот же. Я не мог получить эти параметры.

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