基于Ember.js的仪表板

时间:2012-10-14 00:33:51

标签: javascript ember.js

我正在使用ember.js和使用spring MVC编写的rest API开发应用程序。我必须创建一个带有几个小部件的仪表板。每个小部件都作为自己的行为,并将调用不同的API方法。我想为每种小部件都有一个控制器子类。然后将实例化它们并将其添加到Container视图。但是,ember会自动为每个控制器创建一个实例,所以它是一条很好的路径吗?对ember.js社区有什么建议吗?

感谢您的帮助。

2 个答案:

答案 0 :(得分:5)

你的想法听起来不错。

有很多方法可以解决这个问题。我建议制作一个DashboardView和DashboardController,并在其模板中有几个outlets,每个小部件“插槽”一个:

{{outlet topWidgetView}}
{{outlet leftWidgetView}}
...

然后在路由器中,在仪表板路由的connectOutlets方法中,在实例化仪表板后连接小部件:

router.get('applicationController').connectOutlet('dashboard');

router.get('dashboardController').connectOutlet({
  outletName: 'topWidgetView',
  name: 'fooWidget'
});
router.get('dashboardController').connectOutlet({
  outletName: 'leftWidgetView',
  name: 'barWidget'
});

答案 1 :(得分:4)

而不是每个小部件的插槽,我宁愿有一个小部件区域(列,...),这将是ContainerView,我将动态添加小部件视图,根据用户的设置。