我有几个嵌套路线。在其中一个中,可以打开一个模态(它附加到另一个称为模态的 socket )。
当用户输入文本并单击“确定”时,系统会向 MyrouteChildController 发送一个操作(“valueUpdated”)。但是,我还需要将此事件冒泡到 MyrouteController,但它不起作用。我尝试在操作处理程序中返回 true 并手动调用 @send。
如果我从 MyrouteChildController 自己的模板调用它的操作,它就会起作用。
http://emberjs.jsbin.com/lotinaw/edit?html,js,output
如有任何帮助,我们将不胜感激。
最佳答案
您不仅可以使用 Ember.inject.service()
在 Ember 中的组件
和 Controller
中注入(inject)
服务code> 但您也可以使用 Ember.inject.controller()
注入(inject) Controller 并向其发送操作,然后继续
export default Ember.Component.extend({
mycontroller: Ember.inject.controller('mycontroller'),
funcUsingControllerToSendAction(args){
let mycontroller = this.get('mycontroller');
mycontroller.send('myaction',args);
}
});
这将允许您将带有参数的操作发送到其他 Controller 上下文。
关于javascript - EmberJs - 从模态中冒泡 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36873463/