[英]Calling controller action from Ember 2.0 component
现在,Ember 2.0决定完全删除Ember.View,我遇到了从视图到控制器的操作传递问题。
App.SomeView = Ember.Component.extend({
didInsertElement : function(){
var _this = this;
window.addEventListener("message",
function(event) {
_this.get("controller").send("foobar", event.data);
}, false);
}
});
App.SomeController = Ember.Controller.extend({
actions: {
foobar: function(param) {
console.log("Yey", param);
}
}
});
因为而不是Ember.View我现在需要使用Ember.Component。 当然然后this.get(“controller”)。send方法不再起作用了。 这有什么办法吗?
您可以在组件中使用sendAction()
并在模板中为其分配处理程序。
// some-component.js
this.sendAction('actionName', params);
// template
{{some-component actionName="foobar"}}
// controller
actions: {
foobar(params) {
alert('action received');
}
}
详细信息: http : //guides.emberjs.com/v2.0.0/components/sending-actions-from-components-to-your-application/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.