React-Native之(小白计划一)StackNavigator简单的跳转

目录结构:
1:定义路由页AppNavigators
import  {StackNavigator} from 'react-navigation';import  HomePage from '../pages/HomePage';
import  Page1 from '../pages/Page1';
import  Page2 from '../pages/Page2';
export const AppStackNavigator=StackNavigator({
    HomePage:{screen:HomePage},
    Page1:{screen:Page1},
    Page2:{screen:Page2},
});
2: 定义主页(HomePage)
import React, { Component } from 'react';import {
    StyleSheet,
    Text,
    View,
    Button,
} from 'react-native';
type Props = {};
export default class App extends Component<Props> {
    static navigationOptions = {
        title: 'HomePage',
    };
    render() {
        const {navigation} =this.props;
        return (
            <View style={styles.container}>
                <Text>HomePage</Text>
                <Button
                    title="go to page1"
                    onPress={()=>navigation.navigate('Page1')}
                />
                <Button
                    title="go to page2"
                    onPress={()=>navigation.navigate('Page2')}
                />
            </View>
        );
    }
}
const styles = StyleSheet.create({
    container: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
        backgroundColor: '#d8fffa',
    } 
});
3: 定义page1
import React, { Component } from 'react';import {
    Platform,
    StyleSheet,
    Text,
    View,
    Button,
} from 'react-native';
type Props = {};
export default class Page1 extends Component<Props> {
    static navigationOptions = {
        title: 'Page1',
    };
    render() {
        const {navigation}=this.props;
        return (
            <View style={styles.container}>
                <Text>欢迎来到page1</Text>
                <Button
                    title="go back"
                    onPress={()=>navigation.goBack()}//返回页面
                />
            </View>
        );
    }
}
const styles = StyleSheet.create({
    container: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
        backgroundColor: '#ffffaa',
    } 
});
4:定义page2
import React, { Component } from 'react';import {
    Platform,
    StyleSheet,
    Text,
    View,
    Button,
} from 'react-native';
type Props = {};
export default class Page2 extends Component<Props> {
    static navigationOptions = {
        title: 'Page2',
    };
    render() {
        const {navigation}=this.props;
        return (
            <View style={styles.container}>
                <Text>欢迎来到page2</Text>
                <Button
                    title="go back"
                    onPress={()=>navigation.goBack()}//返回页面
                />
            </View>
        );
    }
}
const styles = StyleSheet.create({
    container: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
        backgroundColor: '#ffffaa',
    } 
});
4:App.js导出整个路由
import {AppStackNavigator} from "./navigations/AppNavigators";export  default AppStackNavigator;
5:index.js页
整个项目的入口,渲染APP.js
import { AppRegistry } from 'react-native';import App from './App';
AppRegistry.registerComponent('RN3', () => App);
效果:
以上是 React-Native之(小白计划一)StackNavigator简单的跳转 的全部内容, 来源链接: utcz.com/z/383716.html








