JavaScript,一种一切主流阅读器都支撑的言语,是开发基于阅读器的 Web 使用顺序的主力,简直每一年城市遭到来自浩繁开发职员的存眷。天然地,框架和库的生态系统天然而然地缭绕着 JavaScript 而尽力,以简化和加强 JavaScript 使用顺序的开发。
这些Tools供给从事情处置到代码缩减和数据衬着的功用。以下是开发基于阅读器的 Web 使用顺序的 JavaScript 开发职员Tools包中最需要的技巧汇总。
Angular,之前是由Google开发的被称为AngularJS,是用于挪动和桌面Web开发的单框架。为了创立类原生渐进式web使用顺序,Angular供给用于汇编使用顺序的数据办事的依靠注入,和用于复合组件的HTML模板。
Angular项目疾速入门页面使得开发者可以轻松Start运用Angular。
2016年9月的Angular第2版的特征是基于TypeScript(Microsoft的JavaScript类型化超集)的重写,以处置在Angular初始版本中架构上存在的功能限制。
如今,开发者都在等候Angular 5,估计到到十月二十三日宣布(没有第3版或第4版)。它预期的功用包含:
用于在阅读器中缓存使用顺序,以增强构建渐进的Web使用顺序的便当性。
构建优化器,经过删除不用要的代码使使用顺序更小。
使Material Design组件与Server端衬着兼容。
Angular 6,估计宣布工夫比Angualr 5玩晚宣布五到六个月,将聚焦于与Angular 5类似的主题:易用性,更小尺寸和功能。Angular自身具有弱小的生态系统,在IDE中有四个数据库和支撑,如JetBrains IntelliJ Idea。
由聚焦的模块构成的Aurelia是由Blue Spire开发的用于挪动、桌面和Web使用顺序的客户端框架。它完成了疾速衬着和“高效”的内存运用率。
Aurelia有处置元数据、依靠注入、绑定、模板和路由的模块。Aurelia集成了Web组件,并供给与工具的双向数据绑定。大多数Aurelia代码都是以纯JavaScript编写的。其他功用包含:
一个用于构建自界说元素和给元素添加属性的HTML编译器。
支撑静态加载。
用于单位测试的可构建耦合代码的依靠注入容器。
供给创立新项目选项的Aurelia CLI,需求装置Node 4或更高版本、NPM 3和Git。
与Polymer库的集成,用于构建可反复运用的web组件。
在模板引擎中,用于组件承继时支撑bindable的承继。
Backbone.js ,也就是 Backbone ,为重度 JavaScript 使用顺序供给了却构体。它具有带有键值绑定和自界说事情的模子,它们是一个支撑可枚举函数和声明性事情处置视图的 API 的聚集。
你可以从 Backbone 项目网站下载开发版本和产品宣布版本。
Backbone.js 中的数据是运用可以创立、校验、烧毁并保管到Server的模子表现的。这些模子经过 RESTful JSON 接口衔接到使用顺序。运用 Backbone.js 时,当 UI 操纵提醒要更改模子的属性时,该模子会触发更改事情。显示模子形态的视图会收到此更改的告诉偏重新衬着他们。
Ember.js 是一个夸大开箱即用的高效力的框架。它具有集成的模板,被称为句柄条,旨在减少代码编写量; 在数据改动时,这些模板会主动更新。
可以在 NPM 中输出 npm install -g ember-cli@2.15 来装置 Ember.js 。
Ember.js 的功用包含:
专注于简化开发的 API 。
专注于闪开发者使使用顺序特例化的通用作风。
Ember.js 3.0 波动版会在2018年1月1日宣布测试版以后的2月12日宣布。在 2.x 版本中不引荐运用的 API ,仍然是支撑的,这些 API 将在 Ember.js 3.x 中被肃清。 一个 add-on 应将支撑在 3.x 代码行中的 Ember.js 2x API 。
与其他着名的 JavaScript 框架分歧,Sencha 的 Ext JS 并非开源的; 它是一种贸易产品。它用于构建面向企业的数据麋集型跨平台 Web 使用顺序,需求多种方式的要素。
The Ext JS 软件可以从 Sencha 的 Ext JS 页面下载到。
Ext JS 框架供给了很多组件,例如数据网格和日历。Ext JS 可与 Sencha Architect 等Tools一同运用,用于拖放 HTML5 使用顺序开发,和 Sencha Themer ,用于使用顺序的款式设置。
Ext JS 的构建器正在思索怎么运用 Ext JS 的架构履行长久的Task。Sencha 方案在本年年末或来岁初宣布 Ext JS 7 ,可是因为 Sencha 收买了 Idera ,这些方案如今被放置了。关于供给契合最新的 ECMAScript 规范和运用 NPM 保证理器和 Webpack 模块绑定器的可行性会商曾经举办过了。
JavaScript 的 jQuery 库的 API 供给了操纵 HTML 文档、事情处置和动画等功用。jQuery 库由 JS 基金会治理,于 2006 年 8 月初次宣布。
jQuery 可以从jQuery 项目网站下载。
jQuery 并非用来构建使用顺序的框架,但它供给根本的 API,很轻易在阅读器中操纵 DOM。jQuery 也能够和使用顺序构建Tools一同运用,比方 Angular 和 React/Redux。
jQuery 团队如今差未几每一年宣布两个版本,从如今到 2018 年中只会宣布一些小版本。除此以外,jQuery 4.0 和后续版本请求运用“下一代”JavaScript完整重写,这需求对构建系统实行更新。在 jQuery 4 和后续版本中另有以下方案:
重写 jQuery 的速度框架,跟踪功能回归
新设计的事情模子,会抛弃特别事情钩子,防止运用 jquery.Event 类的包装
领取新的原生选项,比方主动事情监听器
Meteor(别名 Meteor.js )是一个 JavaScript 框架,可使用较少的代码更快地开发 Web、挪动和桌面使用顺序。开发职员可以在一切情况中运用 JavaScript ,包含在使用Server、Web 阅读器和挪动装备上。
Meteor 软件可以从 Meteor 项目网站下载。
Meteor 平台,也被称为 Meteor.js ,包含用于构建已衔接客户真个响应式使用顺序的技巧,构建Tools和一系列来自 Node.js 和 JavaScript 社区的软件包。运用 Meteor 后,Server会经过装备发送数据而不是HTML,然后在客户端衬着它。
Meteor 1.6 是下一个刊行版本号,其重点是晋级到 Node.js 8,这将让 Meteor 更好天时用Server上的 ECMAScript 功用,从而进步构建功能。
Google的Polymer JavaScript库旨在使开发职员可以充沛应用Web组件,为可重用的自界说元素供给与阅读器内置元素的交互供给可能。
你可以从Bower保证理器上装置Polymer。
5月份宣布的Polymer 2.0版经过去掉DOM操纵时运用的Polymer.dom改良了互操纵性。这使得运用其他库和框架时再运用Polymer组件更轻易。
Polymer 2.0中的其他功用包含:
数据系统的改良,以晋升数据经过和元素之间的调试和通报。
ECMASript 2015类和规范的自界说元素。Polymer第1版中的办法用于界说元素,而不是运用Plymer的工场办法。可是工场办法依然经过兼容性层来支撑。
更容易的数组处置。
行将宣布是Polymer 3.0,它今朝是预览版本,功用包含Bower和HTML import、NPM和ECMAScript 15模块。Bower和HTML imports功用实用于基于HTML基于导入的任务流程。可是,他们把Polymer置于收集开发的主流以外,而且令人们难以运用其他框架或构建Tools。
Facebook用来构建用户界面的 React 库 ,供给基于组件的声明性的视图(view),运用JavaScript来编写组件逻辑。React库,也就是React.js,其实不支撑模子(model)和把持器(controller),可是可以经过其他一些相干的项目完美这些功用。
React 可以从 React 项目网站 下载。
你可使用React的 JSX 语法 来描绘用户界面。JSX答应在一个组件中混杂运用JavaScript和HTML。在构建的过程当中会转换成纯JavaScript。
为了进步功能,React 在比来的刊行版React 16 中对架构实行了重写,称为Fiber。此次更新的首要特色是侧重于为了处置大型组件的异步衬着。可是React自身还其实不支撑异步衬着,这将会在React 16.x的版本线中完成。
React 16的其他改良包含:
供给组件仓库追踪,使得调试愈加容易。
可以在组件的衬着办法(render)中间接前往字符串或许数组。
新的更快的,基于流的Server端衬着。
更靠近原生使用的功能。
在一些组织如Apache软件基金会支持其答应条目后,React 从头修正了其基于BSD+MIT Patents的新的答应证。Apache 担心基于BSD + Patents 的答应使得软件关于下流项目来讲,不再是一个“全能捐赠者” 。
本文中的一切译文仅用于进修和交换目标,转载请务必注明文章译者、出处、和本文链接。 2KB翻译任务按照 CC 协定,假如我们的任务有进犯到您的权益,请实时联络我们。2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务