Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 关于余烬中控制器的典型行为_Ember.js - Fatal编程技术网

Ember.js 关于余烬中控制器的典型行为

Ember.js 关于余烬中控制器的典型行为,ember.js,Ember.js,ember.js中的控制器是要绑定到主视图区域/场景还是绑定到一组数据 将多个主视图绑定到ember中的同一控制器是否常见/明智 在iOS中,屏幕的主要部分或部分绑定到单个控制器。如果你想展示另一个主界面,比如一个模态窗口来创建一个新元素,你(通常)有一个完全独立的控制器来管理这个视图及其数据/逻辑 在Zend Framework之类的环境中,您可以使用控制器执行一些常见的启动步骤来确保身份验证,但这些操作在很大程度上扮演着控制器在iOS中所扮演的角色,处理逻辑并为一个主要部分或视图(作为web

ember.js中的控制器是要绑定到主视图区域/场景还是绑定到一组数据

将多个主视图绑定到ember中的同一控制器是否常见/明智

在iOS中,屏幕的主要部分或部分绑定到单个控制器。如果你想展示另一个主界面,比如一个模态窗口来创建一个新元素,你(通常)有一个完全独立的控制器来管理这个视图及其数据/逻辑

在Zend Framework之类的环境中,您可以使用控制器执行一些常见的启动步骤来确保身份验证,但这些操作在很大程度上扮演着控制器在iOS中所扮演的角色,处理逻辑并为一个主要部分或视图(作为web,这通常是整个页面)提供数据


在ember中使用控制器的典型角色或建议模式是什么?

这里有两个不同的问题,所以我将一次解决一个

首先,您询问控制器应该是面向数据的还是面向视图的。根据我的经验,这两种行为都是允许的。控制器是管理应用程序数据集(包括筛选和搜索)的一种极好的方法。Evin Grano从SproutCore的角度写了一篇关于这一点的好文章,其中的大多数概念也应该适用于Ember:。控制器也非常适合控制应用程序状态和行为。例如,您可以在绑定到的控制器中放置一个方法,作为应用程序其他位置的按钮操作。然而,您还应该检查余烬状态,看看它们是否更适合您的场景


其次,您询问如何将多个视图绑定到同一控制器。就我个人而言,只要控制员保持一个明确的目的,我看不出有任何问题。如果视图在逻辑上是相关的,并且共享相同的状态或数据,那么单个控制器是有意义的。如果你发现控制器越来越多地覆盖了很多不同的领域,你应该考虑把它分成多个控制器。

< P>从我在Ember.js有限的经验中,我对以下方面进行了规范:

  • 视图处理与表示层中的更改相关的用户操作,仅限于它自己的实例

  • 导航控制器/状态管理器处理显示内容的复杂操作(添加多个视图、删除其他视图等)

  • 控制器响应与数据层相关的用户操作


谢谢你,彼得。好消息。我可能会将此标记为正确答案,但我会让它打开一天左右,看看是否还有其他人插嘴。有关于余烬州的好文章吗?那些对余烬州感兴趣的人可能会发现这很有用: