react-native

 

SmartRefreshLayout

https://www.npmjs.com/package/react-native-smartrefreshlayout

 

RN源码解析
https://blog.csdn.net/xiangzhihong8/article/details/84998455//

//双缓冲
https://www.jianshu.com/p/9e5aa666a8a8
react-native实现原理
https://www.jianshu.com/p/04251c28e23d
https://www.jianshu.com/p/a8a5fe46e740


react-naitive原理总结

https://blog.csdn.net/xiangzhihong8/article/details/54425807

https://www.cnblogs.com/wood-life/p/10577868.html

https://www.jianshu.com/p/038975d7f22d

RN的原生代码(Timer和用户事件)驱动JS Engine, 然后JS Engine解析执行React或者相关的JS代码,然后把计算好的结果返回给Native code. 然后, Native code 根据JS计算出来的结果驱动设备上所有能驱动的硬件

*   它负责管理UI component的生命周期,管理Virtual DOM
*   所有业务逻辑都是用javascript来实现或者衔接
*   调用原生的代码来操纵原生组件。
*   Javascript本身是无绘图能力的,都是通过给原生组件发指令来完成

JavaScriptCore + ReactJS + Bridges 就成了React Native。

*   JavaScriptCore负责JS代码解释执行
*   ReactJS负责描述和管理VirtualDom,指挥原生组件进行绘制和更新,同时很多计算逻辑也在js里面进行。ReactJS自身是不直接绘制UI的,UI绘制是非常耗时的操作,原生组件最擅长这事情。
*   Bridges用来翻译ReactJS的绘制指令给原生组件进行绘制,同时把原生组件接收到的用户事件反馈给ReactJS。
*   要在不同的平台实现不同的效果就可以通过定制Bridges来实现

React Native有三个重要的线程:

*   Shadow queue. 布局引擎([yoga](https://facebook.github.io/yoga/))计算布局用的。
*   Main thread. 主线程。就是操作系统的UI线程。无论是iOS还是android,一个进程都只有一个UI线程,我们常说的主线程. React Native所有UI绘制也是由同一个UI线程来维护。
*   Javascript thread. javascript线程。 大家都知道javascript是单线程模型,event驱动的异步模型。React Native用了JS引擎,所以也必需有一个独立的js 线程. 所有JS和原生代码的交互都发生在这个线程里。死锁,异常也最容易发生在这个线程.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值