react-navigation技术进阶

参考:http://www.devio.org/2018/05/15/navigator-to-react-navigation/
参考:https://www.jianshu.com/p/1d0ace411550

使用navigate进行界面之间的跳转
navigate(routeName, params, action)

1,routeName: 要跳转到的界面的路由名,也就是在导航其中的路由名; 
2.params:要传递给下一个界面的参数
3.action:如果该界面是一个navigator的话,将运行这个sub-action

在子组件中怎么使用navigation要使用 withNavigation

withNavigation是一个高阶组件,它可以将navigation这个prop传递到一个包装的组件,
当你无法直接将<code> navigation这个prop传递给组件,或者不想在深度嵌套的
子组件中传递它时,它将非常有用
withNavigation(Component) 返回Component

就是当你一个页面里面包含自己封装的组件,并且你封装的组件里面有需要页面跳转的时候,
这个时候就需要使用withNavigation,这个方法可以很方便的解决这个问题,这里提供两种方法,一种是使用withNavigation这个来实现,另一种是通过给包装组件传递props

使用教程:

第一种方法:(withNavigation);
1.首先在包装组件中导入withNavigation,
	import {withNavigation} from 'react-navigation'
2.导出包装组件,导出方法,
	export default withNavigation(包装组件类名)
3.然后我们就可以像父组件一样实现页面跳转

使用FlatList:
参考:https://juejin.im/post/5a90ca01f265da4e853d70cc

1.data: 数据源组
2.keyExtractor: 函数生产一个不重复的key,key的作用是React能区分同类元素的不同个体,
以便在刷新时能够确定其变化的位置,减少重新渲染的开销,若不指定此函数,则默认抽取
item.key作为key值,若item.key也不存在,则使用数组小标index.这个属性是ListView不具备的,
它在FlatList和SectionList中用做每个item的唯一属性

3.renderItem: 根据列表中每行数据渲染每一行的组件,类似ListView中RenderRow,区别在于
在于FlatList需要指定KeyExtractor 而RenderRow不需要

4.numColumns: 水平模式下设置列表item的网格布局,这点比起ListView就方便多了,不需要设置flexWrap了

FlatList点击事件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值