weex和React Native的区别是什么?

weex

简介:

weex是阿里巴巴公司与2016年6月开源的一种用于构建移动跨平台的UI框架

特点:

  1. Lightweight:轻量级,语法简单,易于使用

  2. Extendable:可扩展,丰富内置组件,可扩展的API,

  3. High Performance:高性能

核心理念:

  1. Write Once Run Everywhere

  2. 基于JS开发框架:

  3. weex基于vue.js

React Native

简介:

Facebook在2015年3月在F8开发者大会上开源的跨平台UI框架

核心理念:LEARN ONCE, WRITE ANYWHERE

基于JS开发框架:

React Native基于React

Weex和React Native的异同

相同点:

  • 都采用Web的开发模式,使用JS开发;

  • 都可以直接在Chrome中调试JS代码;

  • 都支持跨平台的开发;

  • 都可以实现hot reload,边更新代码边查看效果;

不同点:

1、react-native与react相似,weex则是vue的体系。

2、设计角度上react-native与很多oop语言类似,weex则更像web开发的html,react-native没有像weex一样将 页面(templete),功能(script),样式(css)在一个.vue中分成三个特定的代码编写位置,react-native可以在页面中定义执行脚本

3、加载包:react-native 加载包会通过一个入口文件加载整个js.bundle,weex则可以分别加载对应的js,这可能会对应的加载速度造成影响

4、输出包的形式:react-native输出的是一个大的bundle文件,weex输出的是多个.js文件的形式,react-native输出包的时候会吧依赖的framework输出到bundle中,而weex则是输出具体的功能逻辑包,相应的依赖包则由weex的framework层来提供。weex能够天然的支持分包问题解决了更新迭代的加载速度问题,react-native则需要通过bundle-metro或者其他形式来进行分包,以优化包的加载速度

5、react-native有很多设计架构来支持,weex貌似是mvc,react-native的状态管理更好实现?

6、底层类库及功能库的支持react-native更加的丰富

7、weex能够编译出web端的代码,react-native不能,react-native更专注mobile

8、配置层面react-native只提供一个package.json来组织项目清晰明了,weex则做了很多的环境配置

9、打包方式上的差异,react-native打包通过命令打jsbundle,然后在通过原生命令打成对应平台的安装包,weex打包的话可以直接打成对应平台的安装包,如果只是打增量的js包的话则是通过weex run的形式来输出对应的包

Image placeholder
前端答疑
未设置
  75人点赞

没有讨论,发表一下自己的看法吧

推荐文章
vue和react的区别是什么?

vue和react的区别1、监听数据变化的实现原理不同Vue通过getter/setter以及一些函数的劫持,能精确知道数据变化。React默认是通过比较引用的方式(diff)进行的,如果不优化可能导

echarts和vue的区别是什么?

echarts:ECharts,缩写来自EnterpriseCharts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/

bootstrap和vue的区别是什么?

Bootstrap是美国Twitter公司的设计师MarkOtto和JacobThornton合作基于HTML、CSS、JavaScript开发的简洁、直观、强悍的前端开发框架,使得Web开发更加快捷

jquery和vue的区别是什么?

jquery和vue的区别是什么?●jquery是直接操作DOM;使用选择器($)选取DOM对象,对其进行赋值、取值、事件绑定等操作;和原生的js区别只在于可以更方便的选取和操作DOM对象;数据和界面

vue和react的主要区别是什么?

Vue是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计,其核心库只关注视图层,并且非常容易学习,也易与其它库或已有项目整合。另一方面,Vue完全有能力驱动采用

vue和react相似和区别是什么?

vue和react的相似之处使用虚拟dom提供了响应式和组件化的视图组件关注核心库,伴随于此,有配套的路由和负责处理全局状态管理的库都支持服务器端的渲染都支持native方案,React的reactn

dreamweaver和css的区别是什么?

DreamweaverAdobeDreamweaver,简称“DW”,中文名称"梦想编织者",是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器。DW是第一套针对专业

react和jquery的区别是什么?

首先我们要注意的是,虽然我们这里把React和JQuery拿到一个台面上来说,但是这两者是有本质区别的。React是一个UI库,但是JQuery更多的知识一个工具库或者说是插件库,我们之所以把这两者谈

jquery text() val() html()之间的区别是什么?

jquerytext()val()html()之间的区别是什么?●text()获取元素内的文本,相当于js中的innerText●val()获取表单元素的值,相当于js中的input.value●ht

jquery中children()和find()的区别是什么?

jquery中children()和find()的区别children(selector)方法是返回匹配元素集合中每个元素的所有子元素(仅儿子辈)。参数可选,添加参数表示通过选择器进行过滤,对元素进行

SOA架构和微服务架构的区别是什么?

来源:rrd.me/fqdANSOA架构和微服务架构的区别首先SOA和微服务架构一个层面的东西,而对于ESB和微服务网关是一个层面的东西,一个谈到是架构风格和方法,一个谈的是实现工具或组件。1.SOA

jsp和css的区别是什么?

jsp是什么?JSP全名为JavaServerPages,中文名叫java服务器页面,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码;标签通常以结束。JSP技术有点类似ASP

js和jquery的区别是什么?

JavaScript和jQuery的区别:一、本质上的区别:js是网页脚本语言,而jQuery是基于js语言封装出来的一个前端框架。也就是说js是一种语言,而jQuery是基于该语言的一种框架。二、用

jquery不同版本的区别是什么?

目前jQuery有三个大版本:版本描述1.x兼容ie678,使用最为广泛的,官方只做bug维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.42.x不兼容ie678,很

jQuery中this和$(this)的区别是什么?

jQuery中this和$(this)的区别是什么?●$(this)相当于jQuery(this),是一个jQuery对象,只能使用jQuery的属性和方法;●this中存放的是DOM元素,属于jav

jQuery on()和click()的区别是什么?

jQueryon()和click()的区别是什么?●click()属于静态加载,当页面加载完,就不再为新增加的元素添加点击事件。●on()属于动态加载,当页面加载完,可以为新增加的元素添加事件。但是必

jquery和js的区别是什么?

jquery和js的区别是什么?一、首先来看一下jQuery和js的概念jquery是一个快速、简洁的JavaScript库,极大的简化了javascript编程。js是一种脚本语言,常用于网页客户端

vuejs和jquery的区别是什么?

vuejs和jquery的区别1、jQuery首先要获取到dom对象,然后对dom对象进行进行值的修改等操作2、Vue是首先把值和js对象进行绑定,然后修改js对象的值,Vue框架就会自动把dom的值

jquery ===和==的区别是什么?

jquery===和==的区别简单来说,===与==的区别是,===比较刻薄,==相对来说比===温柔一些。==,两边值类型相同时,等同于===;不同的时候,要先进行类型转换,再比较。而===,不做类

ajax与jquery的区别是什么?

jQuery是javascript的一个框架,也就是有人做好了很多功能,你直接拿来用就好了。比如实现Ajax。纯javascript,你可能需要些好多函数,来新建对象,捕捉事件,处理异常等。但用jQu

jquery中on()和click()的区别是什么?

on()和click()的区别:click()属于静态加载,当页面加载完,就不在为新增加的元素添加点击事件。on()属于动态加载,当页面加载完,可以为新增加的元素添加事件。但是必须选定负级元素。二者在

jquery中bind与on的区别是什么?

jquery中bind与on的区别bind和on都是事件绑定,都是给元素绑定事件用的,但是两者却又有着一个大区别:事件冒泡(事件代理)。事件冒泡也是委托事件的原型,事件委托就是子类的事情委托给父类的去

jquery this与$(this)的区别是什么?

$(this)相当于jQuery(this),是一个jQuery对象,只能使用jQuery的属性和方法;而this中存放的是DOM元素,属于javascirpt中的DOM元素对象,要使用DOM元素对象

scss和sass的区别是什么?

另外,SCSS还能识别大部分CSShacks(一些CSS小技巧)和特定于浏览器的语法,例如:古老的IEfilter语法。由于SCSS是CSS的扩展,因此,所有在CSS中正常工作的代码也能在SCSS中正

css3中过渡和动画的区别是什么?

transition过渡让css变化平滑一些属性:属性描述transtion-property指定过渡的属性transtion-duration指定过渡所需时间transtion-timing-fun