0

我们使用 rails 4 beta 和 emberjs 1.0.0rc1 开始了一个项目。

我正在寻找以下问题的“食谱”或模式:

  1. 拥有/模拟“过滤器之前”,例如在没有当前用户时重定向用户

  2. 拥有控制器和模型命名空间,例如 /admin/videos | /视频 | /member/videos 用于根据您的角色访问不同的集合(例如,admin/videos 返回所有视频,/videos 仅公共视频和 /member/videos 仅我的视频......)

  3. 何时何地加载和存储共享对象,例如 currentUser ?它应该随处可用,例如“rails” current_user(我们现在使用需求或 App.set(),但对它并不满意

  4. 在“文档”DOM 元素上捕获事件的最佳方法,而不是 emberjs 应用程序视图(例如隐藏/显示类似 facebook 用户菜单的菜单):我单击图标来显示它,我单击 DOM 文档来隐藏它(有时在我的 ember 应用程序之外......

4

2 回答 2

0
  1. 你有一个redirect钩子Ember.Route。它记录在网站上。

  2. 我不确定这与客户端应用程序有什么关系。我会想象后端有这种过滤器。

  3. needs或者 App.inject绝对是你想要的。您应该有一个currentUser控制器并在所有控制器上要求/注入它。

  4. 也许在其中注册一个处理程序ApplicationRoute并从那里分派路由器事件。

一些注意事项:

App.inject并且App.register应该在这样的任何钩子之外调用:

App.inject('controller', 'gobalUser', 'controller:currentUser');

于 2013-02-19T14:43:04.953 回答
0

例如,我们正在尝试这样做:

App.ApplicationRoute = Ember.Route.extend 
  setupController: ->
    App.register('controller:currentUserController', App.CurrentUserController );
    App.inject('controller', 'gobalUser', 'controller:currentUserController'); 

我们得到了这个错误:Uncaught RangeError: Maximum call stack size exceeded

于 2013-02-19T16:21:07.873 回答