微信号:infoqchina

介绍:有内容的技术社区媒体

Backbone 1.1.0 发布,部分内容与版本1.0不兼容

2013-10-25 21:52 孙镜涛

在JavaScript社区中Backbone.js 是使用最广泛的前端构建框架之一,该框架最近发布了一个新的更新。尽管这并不是一个非常重要的版本号更新,但是来自于一些用户的报告表明其中的一些变化可能与为了使用版本1.0而设计的应用程序不兼容。


版本1.1.0中的新内容


最近的更新发布于10月10号,该版本并没有包含任何新特性。新版本所关注的内容被Backbone.js的创建者Jeremy Ashkenas描述为“6个月内部精简的价值”。除了基本的代码提升之外,Backbone.js 1.1.0还包含一些API变化,详细信息在更新日志中有说明,例如:

  • Backbone 集合的set、add、remove和reset方法的返回值现在将返回改变的模型或者模型的列表。

  • Backbone视图将不再自动地附加选项传递到构造器中作为this.options。

  • 所有“无效的”事件现在会传递一致的参数,它们是:发生问题的模型、错误对象和选项。

  • 在解析期间模型的id将不再会改变,但是应该使用id属性代替。

变化的剩余部分被描述为“对Backbone 1.0特性的微调、优化和bug修复,包括URL重写、选项的变化、批量排序、结尾斜线、边界情况的监听器泄漏和嵌套的模型解析”等内容。


不兼容报告


虽然到目前为止对该版本的响应大部分是正面的,但是依然有一些负面评价。Twitter上的反应显示一些用户似乎有点措手不及,而产生这种情况的原因正是由于小版本中的一些API变化和1.0主版本存在一些不兼容的地方。正如ChrisWren的问题:


“那么Backbone并没有遵循语义版本控制?我以为打破变化意味着2.0版本呢。”


其他的评论集中于相似的批评。对核心不兼容的抱怨好像围绕在Backbone视图的变化周围,正如Christian Hammond在 tweet中阐述的:


“对选项解析的视图结构做了一些非常核心的改变。大量的改变不兼容。不清楚为什么要这么做。”


很显然,新版本假定主要的用户在升级到1.1.0之前会执行测试,但是记住这些改变的本质是非常重要的,这样你才能意识到潜在的不兼容性。


***********************************

本文来自InfoQ微信公众账号:infoqchina

1、回复“今日新闻”,查看今天更新的新闻;

2、回复“今日英文”,查看今天英文站的更新;

3、回复“文章 +关键词”,搜索关键词相关内容;

4、回复“QCon”,了解QCon大会相关信息;

5、回复“活动”,了解最近InfoQ组织的线下沙龙;

6、回复“架构师”,获取《架构师》下载地址;

7、回复“投稿”,了解投稿和加入编辑团队的流程。

***********************************

 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 阿里云携手开源中国众包平台发布百万悬赏项目 从“大数据”到“智能数据” 敏捷破冰之旅(五) 案例 | 如何做商品信息数据分析和展现? 微服务(Microservice)那点事