[英]Passing parameters in Ember's Custom Events (that bubble through the View hierarchy)?
使用在這里找到的Ember的自定義事件時,我找不到傳遞參數的方法。 我寧願避免了目標“父”具體意見,如解決這一個 ,因為我們失去了“冒泡”。
我的用法如下
plugins.js
Em.Object.reopen({ triggerEvent: function (eventName) { this.$().trigger(eventName, this); } });
MyView.js
點擊:功能(){
this.triggerEvent('stepClicked');
}
Ember(0.96+)中的代碼表明,傳遞附加的參數被認為是管理者,而沒有傳遞
rootElement.delegate('.ember-view', event + '.ember', function(evt, triggeringManager) { ... if (manager && manager !== triggeringManager) { result = self._dispatchEvent(manager, evt, eventName, view); } else if (view) { result = self._bubbleEvent(view,evt,eventName); }
預先謝謝
奧倫·魯賓(Oren Rubin)
您可以傳遞一個事件對象,該對象將告訴您正在單擊的元素:
click: function(event){
// will be called when when an instance's
// rendered element is clicked
console.log("element clicked: " + this.get('elementId') );
return false; // return true if you want the click event to bubble up to parent view (default it true)
}
我認為更好的方法是在模板中使用{{action}}
。 以這個答案為例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.