Weex 渲染流程

版权声明:有些文章写的很随意,那是仅作为个人记录的文章,建议直接关掉,多看一秒亏一秒 https://blog.csdn.net/qq_36523667/article/details/82291923

学习自

https://www.jianshu.com/p/3686315d3ad6

JS文件如何和Native View对应起来的?

渲染准备阶段

把任务都缓存起来,在下一次ASYNC渲染信号到来的时候,执行任务

ASYNC渲染信号到来(我也不知道是不是它,多半是它)

caculateLayout

扫描二维码关注公众号,回复: 3213219 查看本文章

这个方法用于解析JS中保存的布局

插一段

不可能把所有JS的东西都搬运到Native来,一来不好对应,二来太过耗时。一般就解析JS的View,然后处理任务的时候,是沿着JS逻辑执行的,遇到需要Native的时候,才调用Native的东西

创建View

即Component。准确的说,Component是View的持有者。

设置LayoutParams

caculateLayout解析了JS布局。解析JS布局后,会拿到里面要创建的View去创建Native View。而这一步就是设置对应布局参数了。(我猜的)

点击事件

看到这里又要插一段,我对Weex又有了新的认识:

Weex就是移动端的抽象,定义了一系列的规则,控件,布局参数,触摸事件。。。JS本身就可以运行在浏览器里。对于IOS和Android,则是会解析其规则,拿着Weex规则和Native规则匹配,创建对应的Native组件。

这就是Weex!

绑定数据到UI上

总结:

1.所有发起的任务都会被延迟到下一次渲染执行(我怀疑ASYNC渲染信号就是Weex的事件驱动模型,惊!)

2.然后就是解析JS,创建View,设置布局参数,点击事件,View绑定数据

猜你喜欢

转载自blog.csdn.net/qq_36523667/article/details/82291923