[英]Ember: Bubble action from component to application controller
我在ember中有一个组件,它需要向应用程序控制器发送一个动作(带有一个参数)。 无论在何处呈现此组件,都需要在应用程序控制器上调用完全相同的动作。
应用控制器
export default Ember.Controller.extend({
actions: {
addAlert: function(message) {
this.set('message', message);
},
removeAlert: function(message) {
this.set('message', message);
}
}
});
我该如何处理? 从开始到结束。
动作不会在控制器中冒泡,当触发动作时,它将通过当前路径的控制器,如果没有任何处理,它将一直冒泡到当前路径,一直到顶层路径(应用程序)。
如果该操作必须在控制器上设置属性,则可以直接从应用程序路由中设置它(尽管不建议这样做)。
// routes/application.js
actions {
addAlert(message) {
this.controller.set('message', message);
},
removeAlert(message) {
this.controller.set('message', message);
}
}
有关更多信息,请阅读有关动作冒泡的信息 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.