2013-10-14 35 views
0

動機:我想用骨架模型將所有函數包含日誌功能,以使它更容易遵循函數調用。無法在骨幹模型中包裝賦予事件參數的函數

我正在遍歷模型函數,並用下劃線wrap()對它們進行變形。

但它看起來像來自'events'哈希的事件函數綁定沒有被包裝,因爲它看起來像這些函數被複制並存儲在DOM中的某個地方,不確定。

有沒有人來解決這個問題或任何想法如何解決?

在這些函數中手動輸入console.log()並不是我正在尋找的東西。

回答

1

我認爲你遇到同樣的問題,因爲人們試圖測試events -hash提供的功能。直接在View上偵聽事件回調不起作用,但在實例化作品之前窺探類的原型。

// This won't work 
var view = new SomeView(); 
spyOn(view, 'onClick'); 
view.$el.click(); // spy isn't called 

// This works 
spyOn(SomeView.prototype, 'onClick'); 
var view = new SomeView(); 
view.$el.click(); // spy is called 

嘗試遍歷你的「階級」的prototype創建後的權利,因爲這應該是一個由events - 實施調用的方法應駐留。

+0

不錯的主意,會嘗試什麼時候會有時間回到這個問題。但看起來像這應該做的伎倆。 – user2846569

+0

這是爲你解決嗎? – jakee