Ember.js如何获取并将数据传递给可重用的视图?

时间:2013-12-07 12:33:15

标签: javascript ember.js dry

我开始学习Ember.js,但是有一个问题:

我有一个控制器,名称是仪表板,它有视图和模板,但是我将视图插入仪表板,如静态视图,配置文件视图,它们都有自己的视图和模板,但我想知道这是怎么回事视图获取他们的数据,因为他们没有控制器?我应该从仪表板控制器传递它们还是在我的静态视图中直接从服务器获取数据?

如果我需要从仪表板控制器传递数据,那么最佳做法是什么?

P.S。我想在其他视图中重用此视图,例如个人资料

1 个答案:

答案 0 :(得分:0)

使用render帮助器。例如:

//in dashboard.hbs
{{render 'statics'}}
{{render 'profile'}}

使用此方法,Ember将在App.StaticsControllerApp.ProfileController的上下文中自动呈现您的视图/模板。当然,你仍然需要为这些控制器提供数据 - 理想的做法是从路线,如

//in App.DashboardRoute.js
setupController: function() {
  this.controllerFor('statics').set('content', someData);
  this.controllerFor('profile').set('content', myProfile);
}