我正在构建一个允许自定义网站的应用程序。所以它看起来像这样
+-----------------+------------------------------------------+
| sidebar | Preview with editor |
+-----------------+------------------------------------------+
| show title [x] | iframe which shows a preview which is |
| show logo [ ] | also a part of application with another |
| chage color [x] | route and allows to add and delete |
| | menu items |
| | |
| | |
+-----------------+------------------------------------------+
问题在于我无法弄清楚如何对preview
说出来
我们不想显示标题/显示标识/更改颜色/等。我想我们需要为preview
和editor
使用相同的控制器,但我不知道如何共享控制器。
有没有办法在Ember中做到这一点?
答案 0 :(得分:1)
如果要重复使用,只需扩展控制器
App.EditorController = Em.ObjectController.extend({
showTitle:true,
showLogo: true
//etc
});
App.PreviewController = App.EditorController.extend({
showTitle: false,
//etc
});
除非您说需要从其他控制器获取信息,否则您要使用needs
http://emberjs.com/api/classes/Ember.ArrayController.html#property_needs