你如何在ember中实现关注。例如,发送邀请功能:
当前模态实现 - 因此无法将控制器分配给视图...
openModal: function(modal) {
var modalView = this.container.lookup(modal);
modalView.appendTo(MS.rootElement);
}
组件方法对我来说不起作用:内容(模型)应该通过路由来设置,我不知道组件中可能对数据提取有用的事件。
嵌套路线也不起作用 - 要改变很多。
我找不到任何有效的方法,请帮忙。
提前致谢。
答案 0 :(得分:1)
您可以将控制器分配给视图。这是一个简单的例子,我可以从页面的任何位置注入一个视图,为它分配一个控制器,当我重新获取视图时,它具有相同的控制器(如果这是预期的结果)。如果这不能让你朝着正确的方向前进,请告诉我。
您可以使用冒泡来允许从应用中的任何位置调用它。
http://emberjs.jsbin.com/uhoFiQO/4/edit
App.InviteView = Ember.View.extend({
templateName: 'invite'
});
App.InviteController = Ember.Controller.extend({
actions: {
pretendToSend: function(){
var invites = this.get('invites');
this.set('invites', invites-1);
}
}
});
App.ApplicationRoute = Ember.Route.extend({
setupController: function(controller, model){
var inviteController = this.controllerFor('invite');
inviteController.set('invites', 5);
},
actions:{
popInvite: function(){
var inviteController = this.controllerFor('invite');
// create/insert my view
var iv = App.InviteView.create({controller: inviteController});
iv.appendTo('body');
}
}
});