我想在const中使用state.photo但要回到我身边;继续读取未定义的属性“照片”。
我该如何解决此问题?
class App extends Component{
constructor(props){
super(props);
this.state={photo:"url"}
}
const RootStack = createStackNavigator(
{
Login:{screen: Login },
EditProfile:{screen:EditProfileScreen},
Main:{screen: MainScreen , navigationOptions: {
headerTitle: (
<View style={{flexDirection:'row', width:100+"%"}}>
<AutoHeightImage width={36} source={ this.state.photo != null ? {uri:url.getURL()+"/"+this.state.photo } : require('./img/user.png')} />
</TouchableOpacity>
</View>
),
headerLeft: null,
headerTintColor: "white",
headerStyle: {
backgroundColor: '#34495e'
} }},
}, { initialRouteName:"Login "});
答案 0 :(得分:0)
不幸的是,您将无法在组件内部定义StackNavigator
。
您可能想做的是覆盖组件内的navigationOptions
,如图here所示。(您还可以在此处阅读有关代码的更多信息。 {{3} } ),然后将photo
变量作为道具传递给组件。或更妙的是,当路由到所需的屏幕时作为navigationParam
。检查React Navigation docs,了解如何实现navigationParam
。