我在设计EmberJS布局时遇到了一些麻烦。我有一个观点分为两部分:
目前,这两个元素共享同一个控制器。
我无法想象如何使用两个不同的控制器,以便能够在其他视图中重用内容库,甚至可以使用两个播放列表编辑器。
到目前为止,我的根视图看起来像这样:
<script type="text/x-handlebars" data-template-name="playlists">
<div id="library">{{template library}}</div>
<div id="playlistEditor">{{template playlisteditor}}</div>
</script>
我看到了关于{{control}}
助手的文档,但它不稳定,我不确定这是我正在寻找的。 p>
谢谢!
答案 0 :(得分:1)
好的,我找到了答案,我必须使用{{render}}
助手,就像那样:
<script type="text/x-handlebars" data-template-name="playlists">
<div id="library">{{render "library" library}}</div>
<div id="playlistEditor">{{render "playlisteditor" playlist}}</div>
</script>
然后,在我的路线中:
App.PlaylistsRoute = Ember.Route.extend({
setupController: function(controller) {
controller.set('playlist', playlist);
controller.set('library', library);
}
});
然后,此EmberJS将自动连接App.PlaylisteditorController
,App.LibraryController
以及观看playlisteditor
和library
。真棒。