Ember.js-如何使用Ember.Router实现所选项目
Ember.js - How to implement selected item using Ember.Router?
我想知道当用户单击/选择其中一个项目时,处理项目列表并显示项目详细信息的最佳方法是什么。例如,当用户单击其中一条消息时,在左侧边栏中显示电子邮件列表,并在主内容区域中显示消息详细信息。
使用@pangrantz关于如何使用路由器基础设施标记活动菜单项的好答案,我能够想出一个工作示例:jsFiddle
但有几件事似乎不太对劲:
首先,在路由器的show
状态下的#connectOutlets
中,我在控制器上设置所选消息,并将插座与同一对象连接。我想我可以做其中一个。
connectOutlets: function(router, context) {
router.set('messagesController.selected', context);
router.get('applicationController').connectOutlet('message-details', 'messageDetails', context);
}
其次,我正在从index
和show
状态转换到相同的状态。我甚至不确定我是否想过渡到一个新的状态——我只想接通插座。
showDetails: Ember.Route.transitionTo('show')
有什么可以修改的地方可以让这个代码更地道吗?谢谢
在我看来,这段代码非常地道。你是对的,你不需要设置所选的消息。当您连接消息详细信息插座时,它会将所选消息设置为消息详细信息控制器上的内容。
您应该将IMO从索引转换为显示状态,因为这是一种很好的RESTful实践,也允许用户为单个消息添加书签。我会将索引状态的URL设置为"/messages",而不是"/"。
相关文章:
- 强制模板刷新ember.js
- 我的单元测试选项是什么
- 如何更改bigquery API中的计费层选项
- 使用Javascript获取所选选项ID
- Selectize.js:如何对整数值的选项进行排序
- 通过js在新选项卡中有条件地打开url
- 按照选项卡索引的顺序循环一个jQuery选择
- Ember Data DS.Model's set函数不起作用
- 如何在使用selectBoxIt JQuery插件时检测选项更改
- 无法在Ionic select中预先选择最后一个选项
- 如何在选项卡上定义属性'的主窗口对象
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的
- 选项和值不会显示在 ember-select-guru 中
- 如何将内置选项卡与没有路由的 ember 集成,以便为每个选项卡异步加载模型
- 在 Ember .js 中通过 ajax 加载选择选项的最佳实践是什么?
- 未在Ember视图中显示的选项选择可编辑
- ember.js ember.使用多个选项选择值绑定
- Ember.使用未绑定选项列表进行选择
- Ember.js |为Ember.select动态添加选项
- 如何使用“asNavFor"”在ember-cli-slick选项