作者davidsky (Alive)
看板Web_Design
標題Re: [問題] 如何管理大量事件綁定、錯誤處理
時間Sun Aug 25 15:02:29 2013
推文已經有說套MVC就可以
假設不想放個很肥的framework在code base裡的話
可以直接去看各框架的做法拿來用
比如JMVC是:
var App = {
init: function app_init() {
this.bindEvents();
},
bindEvents: function app_bindEvents() {
for (var prop in this) {
var a = prop.split(' ');
if (a.length > 1) {
// Pseudo code: Delegate element a[0] with a[1] event
$(a[0]).on(a[1], this[prop].bind(this));
}
}
},
'.delete_button_1 click': function on_delete_button_1_click() {
// do sth...
},
'.delete_button_2 click': function on_delete_button_2_click() {
// do sth...
},
'.delete_button_3 click': function on_delete_button_3_click() {
// do sth...
},
'form submit': function on_form_submit() {
// do sth...
}
};
簡言之用約定俗成的方式將"selector event"當成key, callback當成value
寫在object裡面然後在初始階段去過濾有這樣的property的話就自動做delegate
: 比如是不是可以用OO化的module pattern
: 定義delete, add為public function
: 再定義init()去load這些public function?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.231.48.212
推 tomin:哇 可以這樣寫很酷 學習了! 08/26 22:57
推 Rplus:(Y) 08/26 23:09
推 chatnoir:厲害 08/27 01:38