问题描述
我想在反应导航5 中拥有自己的标题组件。在开发和生产模式下,一切正常,但是,当我构建项目时,请在手机上打开它,然后按以下“设置”屏幕,使我没有错误日志,并导致我的应用崩溃。我正在使用反应本机元素作为自定义标头组件。
我使用的版本:
- react-navigation / bottom-tabs ^ 5.4.5
- 反应导航/本机^ 5.4.0
- 反应导航/堆栈^ 5.3.7
- expo-linear-gradient〜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,}}
/>
),}}
initialRouteName="SettingsIndex"
>
有人知道如何解决吗?
编辑(发现问题)
该问题是由我的标头属性中的“ linearGradientProps”引起的。因此,这可能是反应本机元素或反应本机崩溃。
linearGradientProps={{
colors: ['#2c5282',}}
解决方法
嗯,我认为您没有仔细阅读文档 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,}}
/>