繁体   English   中英

react-native 0.1.17导航器中的NavigationBar

[英]NavigationBar in react-native 0.1.17 navigator

我刚刚将本机的0.1.15应用程序升级到0.1.17版本,并且出现了“无法下载JS包错误”。 我设法在我的代码中跟踪错误:

var SportsSocial = React.createClass({
  componentWillMount: function() {
        this.eventEmitter = new EventEmitter();
    },
  RouteMapper: function(route, navigationOperations, onComponentRef) {
    _navigator = navigationOperations;

    if (route.name === 'login') {
      return (
        <LoginView navigator={navigationOperations} events={this.eventEmitter} />
      );
    } else if (route.name === 'main') {
      return (
        <NewsView navigator={navigationOperations} events={this.eventEmitter}/>
      );
    }
  },
  render: function() {
    var initialRoute = {name: 'login'};
    return (
      <Navigator
            style={styles.container}
        configureScene={() => Navigator.SceneConfigs.FadeAndroid}
        navigationBarHidden={false}
        (==>)navigationBar=<NavigationBar events={this.eventEmitter}/>
        renderScene={this.RouteMapper}
        initialRoute={initialRoute}
      />
    );
  }
});

尝试将navigationBar添加到Navigator实例时出现错误。 我在0.1.15版本中没有任何问题。

甚至像下面这样简单的东西也会给我同样的错误:

navigationBar=<View />

我是否以某种方式误读了文档并在以前的版本中错误地工作了? https://facebook.github.io/react-native/docs/navigator.html的文档中可以找到以下内容

navigationBar node 
Optionally provide a navigation bar that persists across scene transitions

我还有其他方法可以在应用程序中包含自定义导航栏吗?

编辑:我已经测试了所有必需的组件(分别是LoginView,NewsView和NavigationBar),并且它们都可以工作。 问题仅是将NavigationBar添加到导航器。

原来解决的办法很简单:

navigationBar={<NavigationBar events={this.eventEmitter}/>}

关于为什么有些困惑,但是还可以。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM