使用 react-native-simple-router 组织你的React Native 页面
项目地址 安装进入你的项目目录,如过没有初始化项目可以 npm install react-native-simple-router --save 使用import Router from 'react-native-simple-router'; 修改的你的 import React,{ StyleSheet } from 'react-native'; // 初始化页面 class HelloPage extends React.Component { render() { return <Text>Hello world!</Text>; } } const styles = StyleSheet.create({ header: { backgroundColor: '#5cafec',},}); // 在这里定义你的路由 // - 其中name 将会成会顶部导航条的标题内容 // - `component`用于渲染页面的组件 const firstRoute = { name: 'Welcome!',component: HelloPage,}; class MyApp extends React.Component { render() { return ( <Router firstRoute={firstRoute} headerStyle={styles.header} /> ); } } AppRegistry.registerComponent('routerTest',() => MyApp); 接下来你可以加入更多页面,你可以通过 我们定义另外一个页面 'use strict'; var React = require('react-native'); var { StyleSheet,View,Text,Image,TextInput,Component } = React; var styles = StyleSheet.create({ container: { flex: 1,justifyContent: 'center',alignItems: 'center',backgroundColor: '#F5FCFF',welcome: { fontSize: 20,textAlign: 'center',margin: 10,instructions: { textAlign: 'center',color: '#333333',marginBottom: 5,}); class Next extends Component { constructor(props){ super(props); } render() { var me = this; return ( <View style={styles.container}> <Text style={styles.welcome}> Welcome to Next Page! </Text> </View> ); } } module.exports = Next;
import React,{ StyleSheet,PropTypes } from 'react-native'; var Next = require('./next'); const propTypes = { toRoute: PropTypes.func.isRequired,}; class HelloPage extends React.Component { constructor(props) { super(props); this.nextPage = this.nextPage.bind(this); } nextPage() { this.props.toRoute({ name: "next screen",component: Next }); } render() { return ( <View> <TouchableHighlight onPress={this.nextPage} underlayColor="transparent"> <Text>Next page please!</Text> </TouchableHighlight> </View> ); } } HelloPage.propTypes = propTypes; 这个时候我们点击 next page 即可导航至next页面。请记住 配置
Navigator.SceneConfigs.FadeAndroid Navigator.SceneConfigs.FloatFromBottom Navigator.SceneConfigs.FloatFromBottomAndroid Navigator.SceneConfigs.FloatFromLeft Navigator.SceneConfigs.FloatFromRight Navigator.SceneConfigs.HorizontalSwipeJump Navigator.SceneConfigs.PushFromRight Navigator.SceneConfigs.VerticalDownSwipeJump Navigator.SceneConfigs.VerticalUpSwipeJump 更多属性参考可以参阅这里
如果你是在
案例Twitter App一个简单的模仿twitter 的 应用,你可以直接使用它,并借鉴它的写法。 import React,{ AppRegistry } from 'react-native'; import TwitterApp from './node_modules/react-native-simple-router/examples/twitter-example'; AppRegistry.registerComponent('routerTest',() => TwitterApp); Explorer app在 我们可以大致参考作者的目录架构 + images/ + style + css + icons + components + service + pages + ios + android - index.ios.js - index.android.js ... 反馈
其他组件推荐
本文同步自己的博客:http://www.jackpu.com/shi-yong-react-native-simple-router-zu-zhi-ni-de-react-native-ye-mian/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |