当前位置: 首页 > news >正文

开放才能进步!Angular和Wijmo一起走过的日子

Angular 已成为广受欢迎的前端框架。去年9月份,期待已久的 Angular2 的正式版发布之后,Angular 又迎来了新一轮热潮。伴随着 Angular 这一路走来,Wijmo 一直都是第一个全面支持各种版本 Angular 的JS控件库。那么,Wijmo 是怎么做到紧跟 Angular 步伐的呢?

Angular1时代

Angular1 支持 MVC 或 MVVM 模式,提供模块化、双向数据绑定、语义化标签、依赖注入等等,大大的简化了前端应用程序的开发。Angular1 一发布就引起了强烈的关注,尤其是它首次提出的“双向数据绑定”的概念受到了众多开发者的喜爱。

早在2012年,Wijmo 就响应客户的呼声,发布了支持 Angular1 的版本,使得 Wijmo 成为第一个全面支持 Angular1 的控件库。

Angular2的Alpha版

随着 Web 技术的不断发展,为了解决 Angular1 中的问题,Google 决定开发 Angular2。Angular 2 不是 Angular 1 的一次升级,而是一个全新的、不同的、更高级的框架。

这时,Wijmo 团队就决定率先支持 Angular 2,因为支持 Angular2 已是众望所归。这使得开发人员很容易在在他们的 Angular2 应用中集成 Wijmo 控件。 

Wijmo 控件是纯 JavaScript 的,这也使得对 Angular 2 的支持更容易些,产品组可以为支持 Angular 2 进行很简单的包装,这样 Wijmo 的 UI 控件也可以脱离 Angular2 组件包装而独立工作。这是一个很大的付出,但是 Wijmo 做到了对 Angular2 的率先支持。

Angular2的Beta版

历经了55个 alpha 版本之后,2015年12月份,Angular 发布了 beta 版。意味着 Angular2 已经稳定。Beta 版还是给开发者们提供了一个坚实的框架来构建他们的应用程序。

为了率先支持 Angular,Wijmo 开发团队和 Angular 开发团队展开了合作,Angular 团队帮 Wijmo 解决了一些严重的问题。对Wijmo来说这是一个非常有趣的转变,从这个时候开始Wijmo就已经与Angular2保持了高度一致。2016年3月份Wijmo产品经理Chris采访了Angular的负责人Brad Green,一起畅谈Angular相关的话题,也见证了Wijmo和Angular的密切合作。

Wijmo采访Angular

Angular2的RC版

2016年5月的NG CONF(Angular大会)在犹他州盐湖城举行,Angular团队结束了Angular2的beta状态,将其推进到了发布候选(Release Candidate)阶段。大会期间Angular团队成员登台,深入介绍了Angular 2,包括新的离线模板编译器,Angular CLI等。在第一天的会议上,Brad也介绍了支持Angular2的组件库Wijmo。

2016 Angular大会(NG CONF),Brad Green介绍Wijmo

Angular2正式版

2016年9月15日,这对于Angular2来说是一个重要的日子,Angular2正式版发布了,在业界引起广泛关注。很多人认为Angular 2正式版有很多颠覆性的变化,是革命性。Angular 2系统架构中的核心概念包括模块、组件、服务、模板、数据绑定和依赖注入。

Wijmo在Angular2发布几个小时后就发布了支持Angular2正式版本的Wijmo。Wijmo为每一个UI控件都提供了Angular 2 组件。所有Angular 2组件都提供了完全声明性标记。对有需要的属性提供了双向绑定的支持,还对定制绑定和一些组件提供了附加功能,比如对FlexGrid中的单元格模板,可以允许用标签指明单元格的内容。Wijmo的Angular 2组件被封装为模块并且可以在Angular 2应用中作为NPM包被使用。遵循Angular 2团队设置的模式,在Angular2中使用Wijmo组件会感到非常熟悉。

Angular网站对Wijmo介绍

一切的合作,都以“开放”为基础

Wijmo率先支持Angular2取得成功后,不少媒体采访到Wijmo的产品经理Chris,试图探寻Wijmo和Angular 能密切合作的奥秘,归纳起来,主要是以下两点:

“首先,Angular 2团队的开发和路线是十分开放的,这也就保证了我们可以紧跟他们的脚步。其次,当我们遇到障碍时,Angular 2团队也很乐于为我们提供支持。我们和Angular团队建立了良好的友谊。我们也很享受和他们团队一起工作。我很感激他们的开放和支持。“

事实上,在提供对Angular 2的支持时,也遭遇了一些挑战。最大的挑战就是需要提供深度集成。由于Wijmo创建了包装,还需要解决如何平衡Angular 2组件的作用和声明性标记,所以我们编写了大量的代码,来促使我们的控件能够完全的用标记的方式配置,还创建了具有Angular特性的功能,比如FlexGrid中的单元格模板。这允许客户编写自定制的标记,在表格的每一列中使用。

为了做到这样,产品组需要深度理解Angular是如何工作的,同时必须要使用其内置的APIs。我们和Angular 2团队一起工作,使用公共APIs,解决了这个问题。事实上,他们也增加了一些东西供我们使用。

无论过程多么艰辛,Wijmo 做到了对Angular 率先并且完美的支持,这一切就基于“开放”,两个产品组开放合作的心态,以及产品本身在开放和路线上的开放性。


相关文章:

  • Apache Tomcat信息泄露漏洞(CVE-2016-8745)
  • JS部分通用函数
  • Java Integer常量池
  • Internet Explorer快捷键
  • Java中的同步
  • 十条永恒的安全法则
  • 有关activit工作流的项目的一些简述:一
  • 资源的积累
  • windows下ueditor1.4.3.3 jsp 版本在线管理图片显示问题。
  • 致歉
  • 最长下降/上升子序列问题
  • Android源码设计模式解析与实战(八)
  • .net 中viewstate的原理和使用
  • struts1的配置文件
  • mac 安装PHPredis扩展
  • JavaScript-如何实现克隆(clone)函数
  • 2017-08-04 前端日报
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • Asm.js的简单介绍
  • Bootstrap JS插件Alert源码分析
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • Cookie 在前端中的实践
  • Create React App 使用
  • express + mock 让前后台并行开发
  • Golang-长连接-状态推送
  • JavaScript设计模式与开发实践系列之策略模式
  • js作用域和this的理解
  • Laravel核心解读--Facades
  • Mac转Windows的拯救指南
  • Octave 入门
  • quasar-framework cnodejs社区
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Service Worker
  • ViewService——一种保证客户端与服务端同步的方法
  • vue-router的history模式发布配置
  • 关于for循环的简单归纳
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 以太坊客户端Geth命令参数详解
  • scrapy中间件源码分析及常用中间件大全
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • #QT(智能家居界面-界面切换)
  • %check_box% in rails :coditions={:has_many , :through}
  • (007)XHTML文档之标题——h1~h6
  • (C#)一个最简单的链表类
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (Python第六天)文件处理
  • (八)Flask之app.route装饰器函数的参数
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (接口封装)