我们在2013年推出了Cloud Elements集成平台的v1版本,这个产物在过来几年里不断为客户和公司开展供给了杰出的办事。可是2017年,Web技巧敏捷演化,从而运用户希冀也进一步开展。如今是我们从头考虑全部开辟者流程的时分了,这也为我们从头考虑我们的技巧栈供给了一个时机。
在产物宣布周期和宣布刻日的天下中,技巧的选择相当主要。以下是我们一路走来的过程,协助你揭开一些关于React的适用亮点。
在React之前,我们运用AngularJS,这多是事先被选中的最盛行的前端框架。 可是如上所述,明日黄花,AngularJS v1.x的统治已被其年老的小弟Angular 2所夺取。
分开AngularJS v1.x的一个首要目标是这个框架的性命完毕的可预感性。 固然它依然失掉努力的支撑,但这是一个向新事物改变的好时机。
开辟团队晓得持续运用 JavaScript 框架将供给几个明显的长处:
效力:经过构造杰出的预构建形式和功用,可以更快地完成过来需求数月和数百行代码才干完成的项目。
平安性:JavaScript 框架内置平安测试,而且可以失掉由成员和用户也作为测试职员的大型社区支撑。
本钱:大大多数框架是开源和收费的。因为它们可以协助工程师更快地构建定制处理计划,因而 Web App 的终极价钱将会下降。
当在思索构建我们新 UI 的分歧选择时,React 明显是一个明智的选择,由于它的描绘性,高效性和灵敏性。与 Angular 分歧,ReactJS 是一个基于 JavaScript 的开源库,带有 JSX 编译器。它首要存眷用户界面,答应我们创立可重用的 UI 组件。
React 都是基于组件的。运用 React 构建使用顺序是将这些组件中的很多组合在一同,将使用顺序 UI 带入生涯 -- 十分像乐高玩具!这些封装的组件治理本人的形态,由于组件逻辑是用 JavaScript 而不是模板编写的,你可以轻松地经过使用顺序通报丰厚的数据,而不必担忧 DOM 中的形态。
你可认为使用顺序中的每一个形态设计一个容易的视图,而且 React 会在数据更改时处置组件的出现。
固然有点人将争夺完整无形态的组件,但 React 的真正威力和功能来自于承受使用顺序形态观点。
运用 React,你应当永久记着,它实践上并非一个 JS 框架,而是一个用于衬着视图的库。
固然有很多框架可供选择(例如,Vue,Ember 和 Angular 2),但 React 具有一些要害优势:
JSX 是一种 JavaScript 语法,它启用了 HTML 的援用,并运用 HTML 标签的语法来衬着子组件。它增进机械可读代码的构建,并供给了一个在编译时验证文件中组合组件的才能。
因为运用虚拟 DOM,与 Angular 1.x 比拟,它带来了极大的功能晋升。除此以外,React 组件可以在使用顺序之间创立和重用。
ReactJS 和 AngularJS 的首要差别在于 React 是以 JS 为中间的,而 AngularJS 是以 HTML 为中间。JavaScript 要比 HTML 更弱小,这使得 React 愈加容易,集中和一致。
React 经过 Stackoverflow,Reactiflux Chat,Freenode IRC,Facebook 和 Twitter 等论坛供给支撑,这也让我们在选择时更轻易做出决议。
React 可能不会做任何工作,但它供给了一个弥补Tools的列表,包含调试Tools,组件任务台,JSX 集成,根本入门Tools包,全栈入门Tools包,模子治理和与其他平台合作无懈的其他Tools。
React 是 Facebook 和 Instagram 的用户界面运用的框架,这也显示出了它静态,高流量使用顺序的效力。React 多是增加最快的JS“框架” —— 停止今日,GitHub 有超越 1,000 个奉献者。
虽然 React 有一个进修曲线,但它使使用顺序开辟变得容易易懂。另外,它十分合适庞杂,高负载的场景和下一代软件处理计划。
数据起源: https://insights.stackoverflow.com/survey/2017
React 供给了一些有效的开辟者Tools来创立需求零设置装备摆设的使用顺序。跟着平台的不时增加,React 不时宣布新功用和晋级。比来宣布的是 webpack 2,因间接编写和导入 ES6 模块,且不需求将它们编译到 CommonJS 中而著名,这有助于捕捉更多的过错。
React 自身不是一个框架。如前所述,它应当被以为是视图衬着引擎或组件模子。
React 供给可反复运用的可设置装备摆设组件,让您疾速入门。收集上有很多易用的 React 组件,简直涵盖了一切方面:表单(react-form),形态治理(Redux),SPA 路由(react-router),及时音讯(reactfire),治理异步Task(react-axios),画图(react-sparklines)-- 不乏其人。
这是一个很好的图表,显示了 React 和 Angular 之间的首要差别:
数据起源: https://da-14.com/blog/reactjs-vs-angular-comparison-which-better
当你思索转向运用 React 或基于 React 构建时,了解你的数据和你盼望将怎么开展是你在迈步行进之前必需弄明白的。例如,React 运用单向数据绑定,此中数据流仅以单一方法实行。因而,你将需求一直存眷数据发作变更的地方,使其在大型使用顺序中更轻易实行调试。
你还需求深化了解你需求处理的营业问题,和你需求甚么数据往返答这些问题。我们是跨团队的数据驱动型组织。因而,在工程中,我们运用监控和数据搜集来了解哪些固然需求破费工夫来投入,和怎么最好天时用我们的资本。总的来讲,在基于 React 上构建新的 UI,我们克制了艰苦,但我们历来没有遗忘过我们的首要目的 —— 减少消耗的工夫以晋升价值、数据的灵敏性,同时留下提高和立异的空间。
本文中的一切译文仅用于进修和交换目标,转载请务必注明文章译者、出处、和本文链接。 2KB翻译任务按照 CC 协定,假如我们的任务有进犯到您的权益,请实时联络我们。2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务