【发布时间】:2013-04-03 06:53:04
【问题描述】:
我正在尝试了解新路由器系统中的控制器。我知道它们的存在是为了装饰模型并向视图/模板呈现非永久状态以进行渲染。而且我了解 Ember 路由器用于从路由名称实例化和设置每个控制器的单个副本的约定。但这是否意味着您永远不应该拥有一个以上的控制器副本?
这是我的用例:我有一组嵌套的项目列表,这些项目具有复杂的非持久每个项目状态(不同级别的折叠/可见嵌套、不同的编辑模式等)。我不认为这属于视图,而且它太复杂(因为嵌套)而无法保存在单例控制器中——所以我计划每个视图实例都有一个控制器实例(尽管所有相同的控制器和视图类)。这是声音吗?
第二个更简单的问题。如何访问 Ember 路由器实例化的控制器?以前,您可以使用App.get('router.postController'),但这不再有效。
【问题讨论】:
标签: model-view-controller ember.js ember-router