Reactjs 反应:获取导航选项中的对象

Reactjs 反应:获取导航选项中的对象,reactjs,react-native,react-navigation,Reactjs,React Native,React Navigation,我试图通过ReactNavigationheaderRight部分中的引用字符串获取对象,但是,运行下面的代码生成“undefined is not a object”(未定义的不是对象)时,我似乎没有获得主类的正确实例 从“React”导入React; 从“react native”导入{View,Text}; 从“react navigation”导入{StackNavigator}; 导出默认类App扩展React.Component{ render(){ 返回; } } 导出常量Prim

我试图通过
ReactNavigation
headerRight
部分中的引用字符串获取对象,但是,运行下面的代码生成“undefined is not a object”(未定义的不是对象)时,我似乎没有获得主类的正确实例

从“React”导入React;
从“react native”导入{View,Text};
从“react navigation”导入{StackNavigator};
导出默认类App扩展React.Component{
render(){
返回;
}
}
导出常量PrimaryNavigator=StackNavigator({
主要:{
屏幕:主,
}
});
导出默认类主扩展React.Component{
静态导航选项={
标题:“标题”,
headerRight:{this.ref1.accessible}
};
返回(
);
}
}
如何访问
导航选项
部分中引用“ref1”的对象


谢谢。

发生此错误是因为您试图访问静态函数中的实例变量。您必须重新考虑配置导航选项的方式。例如,您可以将道具传递给
PrimaryNavigator
并设置
navigationOptions
,您可以在屏幕后面的位置创建
StackNavigator

import React from 'react';
import { View, Text } from 'react-native';
import { StackNavigator } from 'react-navigation';

export default class App extends React.Component {
  render(){
    return <PrimaryNavigator/>;
  }
}

export const PrimaryNavigator = StackNavigator({
  Primary: {
    screen: Primary,
  }
});

export default class Primary extends React.Component {
  static navigationOptions = {
    title: 'Title',
    headerRight: <Text>{this.ref1.accessible}</Text>
  };

  return (
    <View ref="ref1">
    </View>
   );
  }
}