EmberJs - 从模态冒泡动作

EmberJs - Bubble up action from modal

本文关键字:模态 EmberJs      更新时间:2023-09-26

我有几个嵌套的路由。在其中一个中,可以打开一个模态(连接到另一个称为模态的插座)。

当用户输入文本并单击"确定"时,它会向 MyrouteChildController 发送一个操作("值已更新")。但是,我还需要将此事件冒泡到 MyrouteController,但它不起作用。我尝试在操作处理程序中返回 true,并手动调用@send。

如果我从自己的模板调用MyrouteChildController的操作,它可以工作。

http://emberjs.jsbin.com/lotinaw/edit?html,js,output

任何帮助将不胜感激。

您不仅可以使用 Ember.inject.service() 在 Ember 中inject components和 Ember 中的服务controllers,还可以注入控制器并使用 Ember.inject.controller() 向其发送操作,然后继续

export default Ember.Component.extend({
    mycontroller: Ember.inject.controller('mycontroller'),
    funcUsingControllerToSendAction(args){
        let mycontroller = this.get('mycontroller');
        mycontroller.send('myaction',args);
    }
});

这将允许您将带有参数的操作发送到另一个控制器上下文。