Как получить кнопку заголовка в реагировать родной - PullRequest
0 голосов
/ 27 ноября 2018

Я создал другой класс для навигации, чтобы поддерживать состояние пользователей loggedIn и loggedOut следующим образом: -

import React from "react";
import { createStackNavigator, createSwitchNavigator, DrawerNavigator } from "react-navigation";

import DrawerContent from "../views/Sidebar"

import Profile from '../views/Profile';
import Extra from '../views/Extra';

import SignIn from '../views/SignIn';

import Home from '../views/Home';
import Info from '../views/Info';
import Logout from '../views/Logout';


export const SignedIn = createStackNavigator({
    Home: {
        screen: Home,
    },
    Profile: {
        screen: Profile,
    },
    Extra: {
        screen: Extra,
    }
});

export const SignedOut = createStackNavigator({
    SignIn: {
        screen: SignIn,
        navigationOptions: {
            title: "Sign Up",
            headerRight: <Text>Hi</Text> //calling this gives an error  
        }
    },
});

export const RootNavigator = (signedIn = false) => {
    return createSwitchNavigator(
        {
            SignedIn: {
                screen: SignedIn,
                navigationOptions: {
                    gesturesEnabled: false
                }
            },
            SignedOut: {
                screen: SignedOut,
                navigationOptions: {
                    gesturesEnabled: false
                }
            }
        }, {
            headerMode: "none",
            mode: "modal",
            initialRouteName: signedIn ? "SignedIn" : "SignedOut"
        }
    );
};

Я хочу создать кнопку на панели навигации на экране регистрации, но она даетошибка как: - Error here

заголовок Заголовок легко отображается на экране, но правая и левая кнопки не отображаются.Любая помощь в этом.

1 Ответ

0 голосов
/ 27 ноября 2018

Ваша кнопка заголовка должна быть компонентом

То, как вы используете, не указывает на допустимый компонент

Для этого либо создайте новый компонент 'HeaderRight' и импортируйте его, как высделал для компонента «Домой», а затем укажите для него свойство headerRight

Как headerRight:HeaderRight

Или просто заключите текстовый элемент в круглые скобки, как это

headerRight:(<Text>Hi</Text>)

Попробуйте и скажите мне, если это решено

С уважением

...