0

我创建了一个简单的 Android 应用程序,该应用程序在按下文本时会更改导航。该应用程序运行正常,但当我触摸文本时,内容没有改变,也没有观察到导航。您可以在此处查看错误。我还提供了代码:

import React, { Component, PropTypes } from 'react';
import { Navigator, Text, TouchableHighlight, View, AppRegistry} from 
'react-native';

export default class SimpleNavigationApp extends Component {
constructor(props){
  super(props);
  this.state={
    title: 'My Initial Scene',
  }
}

  render() {
    return (
      <Navigator
        initialRoute={{ title: 'My Initial Scene', index: 0 }}
        renderScene={(route, navigator) =>
          <MyScene
            title={route.title}

            // Function to call when a new scene should be displayed
            onForward={ () => {
              const nextIndex = route.index + 1;
              navigator.push({
                title: 'Scene ' + nextIndex,
                index: nextIndex,
              });
            }}

            // Function to call to go back to the previous scene
            onBack={() => {
              if (route.index > 0) {
                navigator.pop();
              }
            }}
          />
        }
      />
    )
  }
}

class dhrumil extends Component {
  static propTypes = {
    title: PropTypes.string.isRequired,
    onForward: PropTypes.func.isRequired,
    onBack: PropTypes.func.isRequired,
  }
  render() {
    return (
      <View>
        <Text>Current Scene: { this.props.title }</Text>
        <TouchableHighlight onPress={this.props.onForward}>
          <Text>Tap me to load the next scene</Text>
        </TouchableHighlight>
        <TouchableHighlight onPress={this.props.onBack}>
          <Text>Tap me to go back</Text>
        </TouchableHighlight>
      </View>
    )
  }
}

AppRegistry.registerComponent("dhrumil",()=>dhrumil);

正如您在错误中看到的,标题也没有显示在文本“我的当前场景:”之后。我该如何解决这个问题?

4

1 回答 1

0

首先,您的导出默认类 SimpleNavigationApp 永远不会被调用。

您应该将其放在另一个 js 文件中并将其导入 dhrumil 类

.

其次,不再支持 import { Navigator } from 'react-native'。

阅读https://facebook.github.io/react-native/docs/navigation.html了解详细的导航文档。

于 2017-06-11T15:57:31.537 回答