写点什么

Ember 1.7 之查询参数

  • 2014-09-16
  • 本文字数:1277 字

    阅读完需:约 4 分钟

Alex Navasardyan 向 JavaScript 社区宣布 Ember.js 1.7 版本发布了。

Navasardyan 是 Ember.js 发布团队的成员之一,他在文中写道新版本带来了“bug 修复,潜在的重大修改以及新特性”。

Ember.js 1.7 版本的众多新特性之一是支持查询参数。在文章“Ember 1.7.0 和 1.8 Beta 正式发布”中,Navasardyan 由衷感谢 Alex Matchneer 和他的 Ember.js 核心团队,他描述该特性时说:

有了该 API,每个查询参数就和控制器的属性绑定在了一块,如此 URL 中查询参数一旦发生变化(比如,用户点击返回按钮),控制器中的属性也随之更新,反之亦然。

查询参数 API 在维护与 URL 的绑定时,需要处理很多 Navasardyan 称之为“非常复杂的方方面面”。

以上所说的方方面面包括:将 URL 中新的查询参数值转换为控制器属性所需要的数据类型;省略 URL 中默认的查询参数值,以避免默认值对 URL 产生不必要的干扰;将多个控制器属性的变化合并为单一的 URL 更新。

其他发布的新特性包括可嵌套路由,解除了只有 this.resource 才能有嵌套子路由的限制。针对该变化,Navasardyan 说,

this.route 可以像 this.resource 那样被嵌套,但是与 this.resource 不同,子路由的命名空间会追加到父路由后面,而不是重置为顶级命名空间。

在 Ember.js 讨论区,当提前得知发布查询参数功能后,用户 Jinshui Tang评论说此功能“解决了自己应用中与分页相关的部分最重要的问题”。

对查询参数的赞美还有来自Twitter 上的Ember 用户。 EmberSherpa 回应 Alex Matchneer 的发布声明时说“非常感谢团队发布了查询参数功能,这是自 1.0 版本发布之后最令人兴奋的事情”。

根据 Ember.js 1.7.0 更新日志,新版本还包括与控制器相关的变动,包括少量的重大更新和废弃功能:

现在 content 属性衍生自 model。这减少了对 model/content 的诸多说明,而且还设置了一个简单的基本规则:切勿设置控制器的 content,而是选择设置其 model,Ember 会正确处理其他的事情。

针对空数组:

为了与 if 保持一致,在 bind-attr 中空数组返回假值。那些依赖此行为的应用注意了,因为旧版本中处理正好相反,在 bind-attr 中空数组被认为是真值。

1.7 版本修复的 bug 列表中,摘要一部分如下:

  • 使用查询参数的控制器可以进行单元测试。
  • 控制器中新的查询参数在 setupController 之前已经存在。
  • makeBoundHelper 支持不带引号的绑定属性选项。
  • 如果当前值没有变化,SimpleHandlebarsView 不应该重新渲染。允许 Router DSL 通过 this.route 嵌入路由。

更详细的列表信息请阅读 Ember 1.7.0更新日志

另外根据Ember 1.8 beta 的声明,视图层的内部实现已经被重构,以及不推荐在Internet Explorer 6 和7 上使用Ember,因为在下个主要版本中会删除对IE 6 和7 的支持。

Ember.js 基于 MIT 协议发布。InfoQ 读者可以通过其 GitHub 项目向 Ember.js 贡献自己的力量。

查看英文原文: Ember 1.7 Brings Query Params to Community


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

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

2014-09-16 06:241455
用户头像

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

关注

评论

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

springboot+vue+activiti,在线编辑器,快速开发平台

金陵老街

Java Vue 工作流 springboot Activiti

优雅的故障处理:快速创建 Pulsar 重试队列

Apache Pulsar

消息队列 Apache Pulsar StreamNative

Go 与 C++ 的对比和比较

恒生LIGHT云社区

c++ 编程语言 Go 语言

计算机网络常用知识总结

Java 架构 后端 网络 计算机

量化交易炒币机器人系统搭建

量化系统19942438797

机器人 量化交易

最全互联网后端免费技术分享视频资源学习社区

hanaper

宝安机关食堂支持数字人民币刷脸支付

CECBC

北鲲云超算平台如何帮助高性能计算行业提供解决方案

北鲲云

读书笔记-《数据密集型应用系统设计》-概论

KayTin

图数据库在百度汉语中的应用

百度Geek说

数据库 后端

ipfs挖矿合法吗?ipfs挖矿靠谱吗?

区块链 IPFS ipfs挖矿 ipfs矿机 filecoin挖矿

区块链应用:从技术工具到创新思维

CECBC

小公司实施系统为什么也容易失败?

明道云

技术实践|网易云信 IM SDK 服务高可用技术方案

网易云信

后端

Java内存问题从工具到诊断平台

徐敏

Java 监控 垃圾回收 故障诊断

一周信创舆情观察(8.16~8.22)

统小信uos

盲盒星球系统开发

(王经理)专业app小程序开发

模块一作业

陈家豪

架构实战营

WorkPlus高端制造业移动数字化平台解决方案—华晨宝马

BeeWorks

即时通讯 移动办公平台 移动数字化底座 移动数字化基座 企业即时通讯平台

区块链“通证”将颠覆“资本”

CECBC

交易所智能炒币机器人开发||量化交易炒币机器人系统搭建

Geek_23f0c3

量化交易机器人系统开发 炒币机器人

如何基于分布式KV研发一款消息中间件

Java 编程 面试 后端 中间件

kubelet 1.14 升级 kubelet 1.20 容器重启问题

Geek_f24c45

Docker Kubernetes kubelet

区块链产业大爆发!未来究竟是谁的机会?

CECBC

fil挖矿步骤教程是什么?fil挖矿规则是什么?

fil挖矿步骤教程是什么 fil挖矿规则是什么

fil矿机什么时候开始挖?fil矿机能挖多久?

fil矿机能挖多久 fil矿机什么时候开始挖

Goroutine & Channel

Vibyird

并发编程 channel CSP Go 语言 goroutine

吐血整理!金九银十必问的1000道Java面试题及答案

Java 编程 程序员 架构 面试

技术分析| 实时音视频通讯中的流媒体是怎样传输的

anyRTC开发者

音视频 WebRTC 流媒体 流媒体传输

存储大师班 | ZFS存储池块管理与事务模型

QingStor分布式存储

文件存储 分布式存储

能不能征服初恋,就看这个架构了!!!

人工智能~~~

Ember 1.7之查询参数_JavaScript_James Chesters_InfoQ精选文章