react_native_router_flux_使用详解(二)
来源:互联网 发布:龙腾世纪 知乎 编辑:程序博客网 时间:2024/06/03 07:02
之前在 react_native_router_flux_使用详解(一)点击打开链接 根据官网做了简单的理解,接下来我们将进一步学习。
1、简单用例
import React, { Component } from 'react';import { Router, Scene } from 'react-native-router-flux';import PageOne from './PageOne';import PageTwo from './PageTwo';export default class App extends Component { render() { return ( ) }}
如上,创建两个页面分别为PageOne、PageTwo。
每一个Scene component 有如下属性:
key:一个唯一的字符串,用来标识一个Scene,可以理解为scene的一个身份牌号码,就像你身份证号码一样,必须是唯一的。
component:当切换到该scene时,component属性引用的组件将被渲染出来。
title:当切换到对应的scene时,屏幕顶部的导航条中间将显示该title。
在pageOne中多处一个属性 initial={true},用该属性表示pageOne表示pageOne会默认为初始化scene,类似编程中的默认值。什么都不操作的时候,将展示该scene。
PageOne.jsimport React, { Component } from 'react';import { View, Text } from 'react-native';import { Actions } from 'react-native-router-flux';export default class PageOne extends Component { render() { return ( This is PageOne! ) }}
如上所示,在pageOne中有一个Text组件,当点击的时候处罚onPress方法,该方法将调用Actions.pageTwo,我们在http://cherylgood.cn/c/react_native_router_flux_使用详解一.php篇中有介绍Actions,通过Actions来控制Router来对scene进行操作。
这里当点击的时候,会调用Actions.SCENE_KEY(PARAMS) ,SCENE_KEY即为之前定义的key值,参数为可选的,我们在 http://cherylgood.cn/c/react_native_router_flux_使用详解一.php 也有做说明。我们的Actions就会通知Router,你把key=pageTwo的Scene显示出来,如果传有参数的话,参数也会传入Scene组件中。
render() { const goToPageTwo = () => Actions.pageTwo({text: 'Hello World!'}); return ( This is PageOne! )}
如官方示例所示,我们传递一个参数名为text 。值为Hello World!如下所示,我们就可以在key=pageTwo的scene的component属性置顶的组件中通过props获取该参数值。
render() { return ( This is PageTwo! {this.props.text} )}
我们从pageOne跳转到了pageTwo,如果我们想跳回pageOne怎么办呢。
官方提供的导航栏早已提供了一个back icon,我们也可以通过调用Actions.pop()方法将当前scene弹出栈,我们的pageOne就在栈顶了,此时显示的就是pageOne了,如果跳回来后我们需要刷新当前scene,我们可以调用Actions.refresh(PARAMS)
我们将在第三篇中对详细介绍router-flux使用过程中用到的api
http://cherylgood.cn/c/react-native-router-flux 使用详解(三).php writing.......
- react_native_router_flux_使用详解(二)
- jspSmartUpload使用详解(二)
- cocoahttpserver使用详解(二)
- EventBus使用详解(二)
- RecyclerView使用详解(二)
- RecyclerView使用详解(二)
- RecyclerView使用详解(二)
- RecyclerView使用详解(二)
- Glide使用详解(二)
- RecyclerView使用详解(二)
- RecyclerView使用详解(二)
- Glide使用详解(二)
- RecyclerView使用详解(二)
- Retrofit使用详解(二)
- (二)JUnit使用详解
- Glide使用详解(二)
- Glide使用详解(二)
- EventBus使用详解(二)
- MongoDB文档翻译-聚集-对用户的爱好进行聚集
- Algorithm: Quick Sort Mind and Related Questions
- PAT甲级1059. Prime Factors (25)
- ASP.NET Web API 基本操作(CRUD)
- 通过SSH监控远程主机的交互式工具-rtop
- react_native_router_flux_使用详解(二)
- 科普:Bin与Hex是什么鬼
- 模拟网络驱动snull
- Android绘图Canvas笔记
- 2017.2.28
- PAT 1003
- 【java】枚举enum用法
- GPORCA学习笔记(持续更新)
- MySQL入门教程系列一----表的导出与导入