redux在react-native中的使用

      在了解过rn之后,我猜想大家都做过登录页面这样的demo,当你用导航push两个界面登录成功后pop掉登录界面剩下user界面时,你是如何处理这两个界面的数据传输的呢,callback? 或者是使用AsyncStorage,那么数据更多更复杂呢,当第三个界面用到第一个界面的数据时呢,是不是又要写一个callback.当然解决的方法有很多。

      redux就是解决以上问题的方法之一,Redux 是 JavaScript 状态容器,提供可预测化的状态管理。除了和React一起用外,还支持其他界面库,体积小(只有2kb)而且没有任何依赖。点击查看redux官方文档

      官方文档说的特别详细,也特别腻害,腻害到我感觉特别晕。尤其对我这只安卓开发的菜鸟,理解起来还是有点难。

      说的通俗且直白一点呢,就是redux提供了一个store,独立的一个内存区,然后放了一些state,你可以在任何component中访问到state,这些state要更改怎么办呢,store提供了reducer,reducer就是一些函数,通过action来对state进行更改,并返回新state。component中如何调用reducer呢,通过dispatch(action),分发action,这样就自动进入对action进行操作的reducer函数了。当好几个界面都需要用到共同的数据时,将这个数据存入store的state中,只要某一个界面改变了这个数据,其他界面就会一同更改,(这样说好像有点像观察者模式了,2333)

       说这么多感觉还是不能体会的话,更直接一点就是见代码。github源码,有注释有代码,有真相

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值