【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

姗姗来迟的 Ember.js 1.6 版本

  • 2014-07-24
  • 本文字数:1282 字

    阅读完需:约 4 分钟

Ember.js 团队于近日发布了其 JavaScript 框架的 1.6 版本,由于增加了 AMD 加载器而导致了此次的发布延误。

官方声明中,Ember 核心团队成员Robert Jackson 描述了Ember.js 1.6 版本以后的构建如何通过 es6-module-transpiler 转换为 AMD 模块。据 Jackson 说,增加了小型 AMD 加载器来加载转换后的模块,影响了原来移动客户端的启动速度。他说:

在 1.6.0 将要发布时(5 月底)该影响引起了我们的注意,我们决定推迟发布,一直到我们修复该问题。

现在回想起来这个决定非常不明智。此修复花费了比预想更长的时间,同时人们也只能继续使用 1.5.1 版本。我们很多用户,要么没有受到影响,要么并不在意此问题,但他们为了获得本该包括在 1.6 版本中的其他修复,被迫使用 beta/canary(金丝雀)通道上的版本。

用户 Xtian 在评论声明时说:“我不大明白声明的开始几段:启动性能问题已经解决了呢?还是依然存在?”

Jackson回复内容为“还没有修复,但我们会尽快修复,并把它反向移植到1.7 beta 分支中”。

又一Ember.js 团队核心成员Stefan Penner详细描述了该问题

该修复会成为 Brian Donovan 所主导项目 square/es6-module-transpiler 下的新 bundle 格式。该修复删除了整个 AMD 加载器,同时产生更小的整体构建。这样该 bug 中的阻塞问题也会得到改善,并且删除了 ember-core 中的不当循环。

此外,启动问题貌似不会影响桌面浏览器,但是在 Android 浏览器中会消耗大量时间。

虽然此次发布有所延迟,但是 Ember 社区并没有在意,因为 1.6 版本带来的新功能以及 1.7 版本承诺的功能着实令人振奋。

在最新发布的功能中,最显著的变化有更新了 Ember.computed.empty,改善了缓存查找吞吐量,对测试友好的承诺,以及大量的 bug 修复。Jackson 特别指出,更新后的 Ember.computed.empty 会自动识别数组,不需要用户显式指定 array.[] 作为依赖键。

为了描述 Ember 的对测试友好的承诺特性,Jackson 说道:

使用 1.5.1 版本,测试时你必须在 Ember.run 循环中封装任何承诺解析,和 / 或拒绝调用,但是正常操作时相同的代码却不需要封装在循环中。在 1.6 中,在做承诺测试时,你再不需要将承诺封装在循环中。

在 1.6 版本的发布声明中,还包含了 1.7 版本的 beta 版本,该版本包含了对查询参数的支持,并且在 1.7 中默认开启。社区用户非常欢迎此功能,NetNames 的软件工程师 Adrian Meredith评论说

我将应用更新并使用了最新的查询参数,能够正常运行!(需要进行必要的更新)。看起来比我使用一个月前的 canary 通道上的版本要好得多。好样的!

Ember 1.7 的其他改进包括:

  • ember-routing-consistent-resources 功能。
  • uuid 可以跨项目使用。
  • Ember.uuid 作为内部函数使用,代替以前作为 Ember 的属性的做法。

Ember.js 基于 MIT 协议发布。InfoQ 读者可以通过 GitHub 项目向 Ember.js 贡献自己的力量。1.7 版本有望如期发布。

查看英文原文: Delayed Ember.js 1.6 released


感谢曹知渊对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-24 21:542158
用户头像

发布了 28 篇内容, 共 95199 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

LabVIEW控制Arduino采集电位器电压(基础篇—4)

不脱发的程序猿

单片机 LabVIEW LIAT Arduino Uno 采集电位器电压

LabVIEW控制Arduino实现PWM呼吸灯(基础篇—5)

不脱发的程序猿

单片机 LabVIEW LIAT Arduino Uno PWM呼吸灯

Windows编译环境介绍

Loken

音视频 5月月更

MOVE PROTOCOL全球健康宣言,将健康运动进行到底

小哈区块

Golang 的艺术、哲学和科学

宇宙之一粟

Go 语言 5月月更

Docker下RabbitMQ四部曲之三:细说java开发

程序员欣宸

Java Docker RabbitMQ 5月月更

一键式打造DAO,M-DAO或成Web3新宠儿

股市老人

MOVE PROTOCOL全球健康宣言,将健康运动进行到底

西柚子

数据中心进化论:华为带来的三个路标与新可能

脑极体

Maven 跳过测试的几种方式

HoneyMoose

一键式打造DAO,M-DAO或成Web3新宠儿

BlockChain先知

面试官:请手写一个带取消功能的延迟函数,axios 取消功能的原理是什么

若川

JavaScript 源码 前端 前端开发 axios

leetcode 81. Search in Rotated Sorted Array II 搜索旋转排序数组 II(中等)

okokabcd

LeetCode 查找

华为云&易观分析《互联网出海白皮书2022》:新兴市场成掘金热土

易观分析

华为云 出海

2.3 廷克图(TinkerGraph)介绍

Geek_古藤模根

Gremlin 廷克图 图数据库 TinkerGraph

模块二,微信朋友圈架构

泋清

#架构实战营

报名进入尾声,赶快申请加入 sealer 开源之夏吧!

阿里巴巴云原生

阿里云 开源 Kubernetes 云原生 sealer

从 vue3 和 vite 源码中,我学到了一行代码统一规范团队包管理器的神器

若川

JavaScript 前端 前端开发 Node web前端开发

动态规划:打家劫舍 ⛄

空城机

算法 5月月更

使用 FutureProvider 搞定个人主页异步请求的状态管理

岛上码农

flutter ios 前端 安卓开发 5月月更

Vue团队核心成员开发的39行小工具 install-pkg 安装包,值得一学

若川

JavaScript 源码 前端 前端开发 Node

得物Tech Leader对管理授权的思考是什么?/得物技术管理集锦

得物技术

管理 思考 技术管理 事前授权 任务分配

LabVIEW控制Arduino流水灯(基础篇—3)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT 流水灯

电子邮件的传送过程

工程师日月

TCP 5月月更

Java【开发入门学习】笔记一

恒山其若陋兮

5月月更

跨平台应用开发进阶(十七) :uni-app实现内嵌H5应用

No Silver Bullet

uni-app 5月月更 内嵌H5应用

error: conflicting types for xxx in c

codists

c

ZEGO 开发者文档速查|常用视频配置

ZEGO即构

音视频开发 视频配置

从 vue-cli 源码中,我发现了27行读取 json 文件有趣的 npm 包

若川

JavaScript 前端 前端开发 Node web前端开发

朱啸虎称赞的Web3,进入MOVE PROTOCOL将直达

股市老人

面试官:项目中常用的 .env 文件原理是什么?如何实现?

若川

JavaScript 前端 Node

姗姗来迟的Ember.js 1.6版本_JavaScript_James Chesters_InfoQ精选文章