2017-02-23 4 views
0
import React, { Component } from 'react'; 
import { 
    AppRegistry, 
    StyleSheet, 
    Text, 
    View, 
    Navigator, 
    TouchableOpacity, 
    Image, 
    Button 
} from 'react-native'; 
import Actions from 'react-native-router-flux'; 


import First from './First'; 

export default class Home extends Component{ 
     componentWillMount() { 

    } 


render(){ 
    return(
     <View> 
     <View style={{height:220,backgroundColor:'#DCDCDC'}}> 
      <Image style={{width:120,height:120,top:50,left:120,backgroundColor:'red'}} 
     source={require('./download.png')} /> 
     </View> 
     <View style={{top:30}}> 
     <View style={{flexDirection: 'row', alignItems: 'center'}}> 
      <TouchableOpacity style= { styles.views} 
      onPress = {()=>{ Actions.First({customData: 'Hello!'}) }}> 
      <Text style={{fontSize:20, textAlign:'center',color:'white',top:20}}> Profile </Text> 
      </TouchableOpacity> 

      <TouchableOpacity style= { styles.views1} > 
      <Text style={{fontSize:20, textAlign:'center',color:'white',top:20}}> Health Tracker </Text> 
      </TouchableOpacity> 
      </View> 



     </View> 


     </View> 
     ); 
} 
} 

に移動されていない、First.jsページに移動しない手段を動作していないではアクションは、どのように私は私のコードを編集することができ、私はには何も書いていませんComponentWillMount()関数、その中に書かなければならないものは? ataomega反応ネイティブルータフラックスアクションは、上記のコードでは、他のページ

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

import Home from './Home'; 

export default class Prof extends Component{ 

    constructor(){ 
     super() 
    } 

    render(){ 
     return (

      <Navigator 
       initialRoute = {{ name: 'Home', title: 'Home' }} 
       renderScene = { this.renderScene } 
       navigationBar = { 
       <Navigator.NavigationBar 
        style = { styles.navigationBar } 
        routeMapper = { NavigationBarRouteMapper } /> 
      } 
     /> 

      ); 
    } 

renderScene(route, navigator) { 
     if(route.name == 'Home') { 
     return (
      <Home 
       navigator = {navigator} 
       {...route.passProps} 
      /> 
     ) 
     } 
    } 
} 


var NavigationBarRouteMapper = { 
    LeftButton(route, navigator, index, navState) { 
     if(index > 0) { 
     return (
     <View> 
      <TouchableOpacity 
       onPress = {() => { if (index > 0) { navigator.pop() } }}> 
       <Text style={ styles.leftButton }> 
        Back 
       </Text> 
      </TouchableOpacity> 
      </View> 
     ) 
     } 
     else { return null } 
    }, 
    RightButton(route, navigator, index, navState) { 
     if (route.openMenu) return (
     <TouchableOpacity 
      onPress = {() => route.openMenu() }> 
      <Text style = { styles.rightButton }> 
       { route.rightText || 'Menu' } 
      </Text> 
     </TouchableOpacity> 
    ) 
    }, 
    Title(route, navigator, index, navState) { 
     return (
     <Text style = { styles.title }> 
      {route.title} 
     </Text> 
    ) 
    } 
}; 

答えて

0

私はrounterコンポーネントを作成し、そこからアプリの起動を行うことをお勧めまず第一に:この

import { Scene, Router, ActionConst } from 'react-native-router-flux'; 
import First from 'yourRoute'; 
const RouterComponent =() => { 
    <Router> 
     <Scene 
      key="First" 
      component={First} 
      initial /> 

     ... your other scenes 
    </Router> 
} 
export default RouterComponent; 

あなたのインデックスページやどこあなただけの追加から読み込むよう 何かこのコンポーネント

import React, { Component } from 'react' 
import RouterComponent from './Router' 

class AppContainer extends Component { 
    render() { 
    return (
     <RouterComponent /> 
    ); 
    } 
} 


export default AppContainer; 

あなたのコードから呼び出すことができます。疑問がある場合は、それを聞いてください:P

関連する問題