您的当前位置:首页正文

React Native笔记5——页面的跳转

来源:要发发知识网

新建一个navigator.js文件, 主组件为Nav, 并向外暴露.

可以实现跳转的组件有:NavigatorIOS , Navigator , React Navigation,可以翻译为导航器。首先准备两个页面: firstPage,secondPage , 各有一个按钮, 相互跳转:
准备页面:

class firstPage extends Component {
    press_next() {
        //点击按钮 ,下一界面
    };

    render() {
        return (
            <View style={[styles.flex, {backgroundColor: 'yellow'}]}>
                <TouchableOpacity onPress={} style={styles.btn}>
                    <Text>点击退出下一级页面</Text>
                </TouchableOpacity>
            </View>
        )
    };
}

//定义第二个页面
class secondPage extends Component {
    render() {
        return (
            <View style={[styles.flex, {backgroundColor: 'cyan'}]}>
                <TouchableOpacity onPress={} style={styles.btn}>
                    <Text>点击退回上一级页面</Text>
                </TouchableOpacity>
            </View>
        )
    };

    press_pre() {
        //点击按钮 ,上一界面
    };
}

然后在主组建中定义(初始化)Navigator , 在之后的操作中

export default class Nav extends Component {
    render() {
        // 指定首次显示的界面为firstPage
        var rootRoute = {
            component: firstPage
        };
        return (
            <Navigator
                /* 第一步: 设置属性initRoute, 设置路由
                 必须包含的属性:component
                 */
                initialRoute={rootRoute}

                /**
                * 第二步: configureSence 配置跳转场景
                */
                configureScene={(route) => {
                    return Navigator.SceneConfigs.PushFromRight //从右向左
                }}

                /**
                * 第三步: renderSence 渲染场景
                * 参数:
                * 1. route 第一步设置的路由对象
                * 2. Navigator 导航对象
                * 实现:
                * 给需要显示的组件设置属性
                */
                renderScene={(route, navigator) => {
                    // 从route对象中获取页面组件
                    var Minuit = 
                    return (<Minuit navigator={navigator} {...route.passProps}/>);
                }}
            ></Navigator>
        )
    }
}