Weex 是一个动态化的高扩展跨平台解决方案,也就是说开发人员只需要写一份代码就可以同时在移动端(Android端、iOS端)、Web端运行,这有别于React Native,从技术实现上也略有区别。
下面是一张Weex的整体架构图。
从这张图我们可以发现,Weex 表面上是一个客户端技术,但实际上它串联起了从本地开发环境到云端部署和分发的整个链路。
具体来说,开发者首先可以在本地像撰写web页面一样撰写一个 app 的页面(Weex File),然后编译成一段 JavaScript 代码(transformer
),形成 Weex 的一个 JS bundle
;在云端,开发者可以把生成的 JS bundle 部署上去(deploy
),然后通过网络请求或预下发的方式传递到用户的移动应用客户端(Serve->JS FrameWork
);在移动应用客户端里,WeexSDK 会准备好一个 JavaScript 引擎(JSCore、V8
),并且在用户打开一个 Weex 页面时执行相应的 JS bundle,并在执行过程中产生各种命令发送到 native 端进行的界面渲染或数据存储、网络通信、调用设备功能、用户交互响应等移动应用的场景实践(callJs、callNative
);
说了这么多,其实Weex的运作流程可以使用下面的原理来描述:
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?