React 基础

React Native (简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 React 在原生移动应用平台的衍生产物,目前支持iOS和安卓两大平台。RN使用Javascript语言,类似于HTML的JSX,以及CSS来开发移动应用,因此熟悉Web前端开发的技术人员只需很少的学习就可以进入移动应用开发领域。

React Native主要特性如下:

  • 原生的iOS组件

React Native主张“Learn once, write everywhere”而非其他跨平台工具一直宣扬的“Write once, run everywhere”。通过React Native,开发者可以使用UITabBar、UINavigationController等标准的iOS平台组件,让应用界面在其他平台上亦能保持始终如一的外观、风格。

  • 异步执行

JavaScript应用代码和原生平台之间所有的操作都采用异步执行模式,原生模块使用额外线程,开发者可以解码主线程图像、后台保存至磁盘、无须顾忌UI等诸多因素直接度量文本设计布局。

  • 触摸处理

React Native引入了一个类似于iOS上Responder Chain响应链事件处理机制的响应体系,并基于此为开发者提供了诸如TouchableHighlight等更高级的组件。

市场上有许多JavaScript MVC框架在性能和可靠性方面做得相当不错。那么,为什么React如此受欢迎?为什么有人会使用React而不是依赖其他一些MVC框架?

React是一个用于创建可重用且有吸引力的UI组件的库。它非常适合代表经常变化的数据的组件。使用React,您可以通过将它们分解为组件而不是使用模板或HTML来构建可重用的用户界面。

React的官方网站提到了这个关键功能,它说你可以使用React Native框架在JavaScript中构建移动应用程序。

React还介绍了JavaScript XML或JSX的使用,它是JavaScript的语法扩展。React不一定需要JSX,但它在创建UI组件和调试时非常简单有用。

React和Angular是用于构建Web应用程序的两个顶级JavaScript框架。

Vue.js是一个开源JavaScript框架,能够开发单页面应用程序。它还可以用作Web应用程序框架,旨在简化Web开发。Vue.js应用程序开发引起了全球开发人员的极大关注,以构建令人惊叹的Web应用程序。

Vue或Vue.js是一个用于为Web构建引人注目的UI的渐进式框架。它最初于2014年由前Google开发人员Evan You发布,他使用AngularJS并决定排除Angular框架的痛点并构建轻量级的东西。

它的流行有很多原因,其中一个关键原因是它能够在没有任何动作的情况下重新渲染。它允许您构建可重用,小巧但功能强大的组件,因此,它提供了一个可组合的框架,允许您在需要时添加组件。

这两个框架之间有许多相似之处,例如:

1、两者都是为了与根库一起使用而构建的。

2、React.js和Vue.js基于Virtual DOM模型。

3、这两种工具都具有基于组件的结构。

React.js的优点:

灵活性和响应性:它提供最大的灵活性和响应能力。虚拟DOM:由于它基于文档对象模型,因此它允许浏览器友好地以HTML,XHTML或XML格式排列文档。丰富的JavaScript库:来自世界各地的贡献者正在努力添加更多功能。可扩展性:由于其灵活的结构和可扩展性,React已被证明对大型应用程序更好。不断发展: React得到了Facebook专业开发人员的支持,他们不断寻找改进方法。Web或移动平台: React提供React Native平台,可通过相同的React组件模型为iOS和Android开发本机呈现的应用程序。无论是Web还是本机移动开发,React都是大多数用户界面设计平台的理想选择。

使用Vue.Js的优点

易于使用: Vue.js包含基于HTML的标准模板,可以更轻松地使用和修改现有应用程序。更顺畅的集成:无论是单页应用程序还是复杂的Web界面,Vue.js都可以更平滑地集成更小的部件,而不会对整个系统产生任何影响。更好的性能,更小的尺寸:它占用更少的空间,并且往往比其他框架提供更好的性能。精心编写的文档:通过详细的文档提供简单的学习曲线,无需额外的知识; HTML和JavaScript将完成工作。适应性:整体声音设计和架构使其成为一种流行的JavaScript框架。它提供无障碍的迁移,简单有效的结构和可重用的模板。

两个框架的深入比较

重新渲染和优化

当你比较React和Vue时,速度不能成为决定哪个更好的重要比较因素。在性能方面,让我们考虑重新渲染功能。当组件的状态发生变化时,React的机制会触发整个组件树的重新呈现。您可能需要使用额外的属性来避免不必要地重新渲染子组件。

虽然Vue的重新渲染功能是开箱即用的,但Vue提供了优化的重新渲染,其中系统在渲染过程中跟踪依赖关系并相应地工作。

重新渲染Vue是最显着的特征,使其成为全世界开发人员广泛接受的框架。

JSX与HTML

React使用JSX - 一种声明性JavaScript XML,允许开发人员利用JavaScript的强大功能编写组件,而Vue.js使用HTML模板创建视图。

基于HTML的模板更加熟悉,在改进现有应用程序以获得Vue反应性功能的好处方面也是有益的。这为初学者和有经验的专业人士提供了一个简单的学习曲线,因为他们中的大多数人都以这种或那种方式使用HTML。

路由和状态管理解决方案

在像React和Vue这样的基于组件的框架中,当您开始扩展应用程序时,需要更加关注状态管理和数据流。这是因为有许多组件相互交互并共享数据。

在这种情况下,React提供了一种称为Flux / Redux架构的创新解决方案,它代表单向数据流,是着名MVC架构的替代方案。现在,如果我们考虑Vue.js框架,就会有一个名为Vuex的更高级架构,它集成到Vue中并提供无与伦比的体验。

建筑工具

React和Vue都有一个非常好的开发环境。只需很少或没有配置,您就可以创建应用程序,使您能够使用最新的实践和模板。在React中,有一个Create React App(CRA),在Vue中,它是vue-cli。

这两种引导工具都倾向于为您提供舒适灵活的开发环境,并为您提供开始编码的出色起点。

跨平台应用程序开发:谁是赢家?

跨平台应用程序开发已经广泛流行,两个框架都在竞相提供卓越的跨平台应用程序开发体验。React的React Native是一个成熟且广泛使用的本机渲染应用程序平台。另一方面,Vue的Weex仍在不断发展,旨在为iOS和Android创建应用程序提供流畅的开发体验。

发布了81 篇原创文章 · 获赞 62 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_38021852/article/details/88994526