Компонент настраиваемого заголовка React Navigation 5 вызывает сбой при открытии опубликованного приложения

Я хочу иметь свой собственный компонент header в React navigation 5. Все работает нормально в режимах разработки и производства, однако, когда я создаю проект, открываю его на своем телефоне и нажимаю следующий экран «Настройки», который дает мне нет журнала ошибок, и мое приложение вылетает. Я использую собственные элементы реакции в качестве настраиваемого компонента заголовка.

Версии, которые я использую:

  • реагировать-навигация / нижние вкладки ^ 5.4.5
  • реагировать-навигация / родной ^ 5.4.0
  • реагировать-навигация / стек ^ 5.3.7
  • Экспо-линейный градиент ~ 8.2.1

Я уже разобрал некоторые вещи и пришел к выводу, что следующий код не работает

       <Stack.Navigator 
        screenOptions={{
            header: () => (
                <Header
                    leftComponent={{ text: 'Settings', style: [t.textWhite] }}
                    rightComponent={<Icon name='user' type='font-awesome' color={'white'} />}
                    linearGradientProps={{
                        colors: ['#2c5282', '#3b8b85'],
                        start: { x: 0, y: 0.5 },
                        end: { x: 1, y: 0.5 },
                      }}
                />
            ),
        }}
        initialRouteName="SettingsIndex"
    >

Кто-нибудь знает, как решить?

ИЗМЕНИТЬ (обнаруженная проблема)

Проблема была вызвана «linearGradientProps» в моем свойстве заголовка. Так что либо это может быть сбой, связанный с реагированием на собственные элементы, либо с отказом от реагирования.

linearGradientProps={{
   colors: ['#2c5282', '#3b8b85'],
   start: { x: 0, y: 0.5 },
   end: { x: 1, y: 0.5 },
}}

person Raul Fernandez van Dijk    schedule 25.09.2020    source источник
comment
Попробуйте перестроить с помощью отладки и проверьте сбой, возможно, вы пропустили github.com/react -native-community / react-native-linear-gradient   -  person Anhdevit    schedule 25.09.2020
comment
@AnhDevit Я использую версию градиентов expo   -  person Raul Fernandez van Dijk    schedule 25.09.2020
comment
где ваш заголовок импорта?   -  person Anhdevit    schedule 25.09.2020
comment
@AnhDevit наверху, но не проблема кода.   -  person Raul Fernandez van Dijk    schedule 25.09.2020
comment
@AnhDevit Мое приложение вылетает, только когда я добавляю градиенты.   -  person Raul Fernandez van Dijk    schedule 25.09.2020
comment
да, вы можете показать код, в котором вы импортируете заголовок?   -  person Anhdevit    schedule 25.09.2020
comment
@AnhDevit import {Header} из 'react-native-elements';   -  person Raul Fernandez van Dijk    schedule 25.09.2020


Ответы (1)


Хм, я думаю, вы не читаете внимательно документ https://reactnativeelements.com/docs/header/#lineargradient-usage Это пример, который вы пропустили LinearGradient

import { Header } from 'react-native-elements';
import LinearGradient from 'react-native-linear-gradient';

...

<Header
  ViewComponent={LinearGradient} // Don't forget this!
  linearGradientProps={{
    colors: ['red', 'pink'],
    start: { x: 0, y: 0.5 },
    end: { x: 1, y: 0.5 },
  }}
/>
person Anhdevit    schedule 25.09.2020
comment
В этот раз я постараюсь почитать документацию получше, спасибо :) - person Raul Fernandez van Dijk; 25.09.2020