2017-07-07 107 views
2

我是新來的反應原生,並試圖建立一個應用程序來練習。我已到達路由部分,但無法正常工作。我現在有三個組件。該應用程序,路由器和一個叫做遊戲。反應本地路由器Flux

我有這樣的路由:

import React from 'react'; 
import { Scene, Router } from 'react-native-router-flux' 
import { GameComponent } from './game' 

const RouterComponent =() => { 
    return (
     <Router> 
      <Scene key="root"> 
       <Scene 
        key="game" 
        component={GameComponent} 
        title="New Game" 
       /> 
      </Scene> 
     </Router> 
    ); 
} 
export default RouterComponent; 

而這在應用程序:

import { Actions } from 'react-native-router-flux'; 

export default class App extends React.Component { 
    render() { 
     return (
      <View style={styles.container}> 
       <Text>Basketball App</Text> 
       <Button 
        onPress={() => Actions.game()} 
        title="New Game"> 
       </Button> 
      </View> 
     ); 
    } 

但我收到以下錯誤信息:未定義是不是一個函數。 我錯過了什麼?

感謝很多提前

回答

0

你還需要在你的路由器

定義主屏幕導入您的GameComponent

import GameComponent from './game'; 

創建您的路由器

const RouterComponent =() => { 
    return (
     <Router> 
      <Scene key="root"> 
       <Scene key="home" component={Home} title="Home" /> 
       <Scene key="game" component={GameComponent} title="New Game" /> 
      </Scene> 
     </Router> 
    ); 
} 

創建您的主屏幕

class Home extends Component { 
    render() { 
    return (
     <View style={{flex:1}}> 
      <Text>Basketball App</Text> 
      <Button 
       onPress={() => Actions.game() } 
       title="New Game"> 
      </Button> 
     </View> 
    ); 
    } 
} 

主要應用

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

謝謝,這是工作 – balintd