react-native-router-flux
这是一个路由,可以用来做Android底部的导航栏,学Android的都知道,如果用原生的代码来
做导航栏,会很复杂,关系到很多复杂的知识。
接下来我就简单的说明一下如何插入和使用吧:
1.你要先依赖它:npm install react-native-router-flux -save /或者 yarn add react-native-router-flux (安装过 yarn 的)
2.根据需求,先做几个界面,有个定为首页,有你的导航栏在下面
3.用一个let 的箭头函数来接收那几个界面
在app,js作为路由转换的界面 给个组件变量接收界面如
let aaa =()=>{return <你的界面>}
导入依赖该包的两个组件 import {Router,Scene} from 'react-native-router-flux';
将原先得 return <View></View>修改为 返回一个Router 在<Router>的里面添加<Scene>组件
在再里面添加对应几个界面就几个<Scene> 给它个key(用单引号括起来) 用来识别跳转到哪个界面 而对应的界面要用属性component={在上面定义的组件变量名} 给它
一个默认呈现的界面 initial={true}
在首页的导航栏下的每个字段给个点击事件onPress
在这里之前要先依赖 一个Actions 的组件 import {Actions} from 'react-native-router-flux';
在事件里为{Actions.对应的key值}
就可以了 如上 给予响应图片:
====================================================
==================================================================================================
=================================================================================================
========================================================================================================
当然还可以传值 这里就先到这里了 后面呢会慢慢的完善
它还是还有许多非常好用的属性:
Router
Scene
Modal
TabBar
getInitialState
Reducer
DefaultRenderer
Switch
Actions
ActionConst
NavBar
在这里再加上一个可以回到手机界面的一个事件,因为router 它没有默认退出事件
所以我们要导入一个 BackHandler 这样的控件 ,事件给它返回一个结束App进程的触发 BackHandler.exitApp();
再cdm里面使用,就是这个事件一直存在,代码如下:
BackHandler.addEventListener('hardwareBackPress',this.onBackAndroid);
记得给它一个bnd
react-native-router-flux的更多相关文章
- iOS程序员的React Native开发工具集
本文整理了React Native iOS开发过程中有用的工具.服务.测试.库以及网站等. 工具 你可以选择不同的开发环境:DECO.EXPO或者你可以使用Nuclide+Atom,目前我使用EXPO ...
- iOS、swift、React Native学习常用的社区、论坛
<!----iOS> <!----Swift>*IOS开发常用社区:http://code4app.com/ *IOS开发常用社区:http://www.cocoachina. ...
- React Native 开发豆瓣评分(三)集成 Redux
什么是 redux redux 是一个用于管理 js 应用状态(state)的容器.比如组件 A 发生了变化,组件 B 要同时做出响应.常见的应用场景就是用户的登录退出操作:未登录状态,个人中心显示登 ...
- React Native初探
前言 很久之前就想研究React Native了,但是一直没有落地的机会,我一直认为一个技术要有落地的场景才有研究的意义,刚好最近迎来了新的APP,在可控的范围内,我们可以在上面做任何想做的事情. P ...
- react native 入门实践
上周末开始接触react native,版本为0.37,边学边看写了个demo,语法使用es6/7和jsx.准备分享一下这个过程.之前没有native开发和react的使用经验,不对之处烦请指出.希望 ...
- React Native填坑之旅--重新认识RN
如同黑夜里的一道光一样,就这么知道了F8. F8是每年一次Facebook每年一次的开发者大会.每次大会都会release相应的APP,iOS.Android都有.之前都是用Native开发的,但是2 ...
- React Native填坑之旅--Navigation篇
React Native的导航有两种,一种是iOS和Android通用的叫做Navigator,一种是支持iOS的叫做NavigatorIOS.我们这里只讨论通用的Navigator.会了Naviga ...
- React Native开发技术周报2
(1).资讯 1.React Native 0.22_rc版本发布 添加了热自动重载功能 (2).技术文章 1.用 React Native 设计的第一个 iOS 应用 我们想为用户设计一款移动端的应 ...
- React Native实践之携程Moles框架
编者:本文来自携程框架研发部高级经理魏晓军在第二期[携程技术微分享]上的分享,以下为整理后的文字实录.视频回放可点击这里.关注携程技术中心微信公号ctriptech,可获知更多微分享课程信息. 因为支 ...
- 初始React Native
1.何是React Native: React-Native是:Facebook 在2015年初React.js技术研讨大会上公布的一个开源项目.支持用开源的JavaScript库React.js来开 ...
随机推荐
- open-falcon部署v0.2.1版本
环境准备 安装redis yum install redis -y systemctl start redis 安装mysql rpm -ivh http://dev.mysql.com/get/my ...
- Manjaro搭建无密访问samba服务器
为了方便Linux在Windows平台下开发,搭建Manjaro无密访问samba服务器 后面加了Windows下搭建samba方法 安装smb服务器 我用的是Manjaro gnome 18,需要安 ...
- webdriver之富文本,Firefox配置加载
chrome驱动下载:http://chromedriver.storage.googleapis.com/index.html 加载浏览器配置,需要用FirefoxProfile(profile_d ...
- 深度学习网络中numpy多维数组的说明
目前在计算机视觉中应用的数组维度最多有四维,可以表示为 (Batch_size, Row, Column, Channel) 以下将要从二维数组到四维数组进行代码的简单说明: Tips: 1) 在nu ...
- loadrunner转码两种方式
1.//使用转换函数将resp值做编码转换并存入msg lr_convert_string_encoding(“佛挡杀佛”),"utf-8",NULL,"msg" ...
- 剑指offer 10:矩形覆盖
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? public class Solution { public ...
- Vue-admin工作整理(九): 状态管理Vuex-state和getters
前提:通过项目结构个人设置创建的项目 store文件下actions.js.mutations.js.state.js都是根级别的状态管理,引用入口是通过index.js来实现,整个Vuex处理逻辑为 ...
- The threat to world
The threat to world 对世界贸易的威胁"> The rules-based system is in grave(严重的) danger 基于规则的体系岌岌可危 DO ...
- loadrunner 参数化取值方式详解
参数化对话框中与参数取值方式有关的区域如下: 改变参数化的取值方式,关键在于Select next row和Update value on这两个选项. Select next row包括以下选项: S ...
- trueStudio笔记
1.C标准的选择 可以在项目->属性->C/C++ Build->Setting->Tool Setting->C Compiler->General中选择使用不同 ...