flash事件系統(tǒng)addEventListener可以優(yōu)美的回調(diào)嗎?
什么?你聽說addEventListener不夠優(yōu)美?。?
程序設(shè)計人員總是希望寫的程序優(yōu)美一點,就是這個問題,在egret白鷺引擎中,白鷺引擎應(yīng)用了一個flash的標準事件流設(shè)計思想去打造了一個flash一模一樣的事件系統(tǒng)。
我們可以看這個類


?這個東西啊,是非常優(yōu)美的了。
但是我在寫程序的時候可能會這樣用
這是一個游戲中交易行拍賣系統(tǒng),拍賣系統(tǒng)設(shè)計有單個拍賣物品的條和存放控制這些條的對象池,而在對象池中進行對交易條監(jiān)聽點擊、并且不能把其移動到條的邏輯里面,只能放在對象池的邏輯中操作,我覺得這些這么長的回調(diào)可能有一點不夠,優(yōu)美~

所以我準備把監(jiān)聽點擊事件處理函數(shù)做成一個外部的函數(shù)封裝,然后把點擊也分出函數(shù)封裝然后在這個對象池中多兩個函數(shù)進行處理這個部分的邏輯操作。
但結(jié)果是
并不能進行傳參,不能用一種call的方法傳值調(diào)用。而網(wǎng)友給的解決方案是函數(shù)套函數(shù),這樣做看上去更加的不優(yōu)美了~所以也只能妥協(xié),降低自己對程序的潔癖程度,允許這樣的程序出現(xiàn)。
其實這樣寫下去問題也不大,沒有循環(huán)調(diào)用,而且程序簡單易懂。
標簽: