我有一個視圖代表一個文件夾。我有一堆子視圖,這個文件夾視圖創建,每個代表該文件夾中的唯一縮略圖。事實證明,每個子視圖的渲染方法都會被多次調用(3)。有沒有辦法找出如何調用視圖的渲染方法。如果模型元數據發生變化,則可能出現觸發事件的不同位置。它已經成爲一個巨大的混亂,我正在尋找一種方法來調試骨幹視圖,以瞭解什麼是觸發渲染方法。Backbone查看渲染功能多次調用
0
A
回答
1
,我總是調試事件是這樣的:
view.on('all', function(eventName){
console.log('Name of View: ' + eventName);
});
你能做到這一點的看法,模型或集合。
例如: http://jsfiddle.net/CoryDanielson/phw4t/6/
我手動添加的request
和sync
方法來模擬骨幹將如何實際執行。 rendered
事件是自定義的 - 沒有人會聽它。只是爲了告訴你如何/何時發生。
0
你可以試試backbone.debug
。應該給你一些洞察哪些事件正在被解僱。
1
因此,根據您的要求,下面是如何覆蓋trigger
方法的示例。請注意,您必須覆蓋所有類型的類(模型,視圖,集合,路由器)。
var trigger = Backbone.Model.prototype.trigger;
Backbone.Model.prototype.trigger = Backbone.View.prototype.trigger = Backbone.Collection.prototype.trigger = Backbone.Router.prototype.trigger = function(name) {
trigger.apply(this, arguments);
console.log(this, 'triggered the event', name, '.').
}
你可以通過重寫每個方法來更具體地添加日誌中的對象類型。但你有一個總體思路。
相關問題
- 1. Backbone查看渲染:先取先取先渲染,兩種方法都有缺陷?
- 2. Backbone Marionette,渲染複合視圖兩次?
- 3. 從另一個視圖調用查看功能 - Backbone
- 4. Backbone Marionette CompositeView渲染/用法
- 5. 用Backbone渲染表格
- 6. Mvc查看渲染
- 7. IBDesignable查看渲染
- 8. 查看不渲染
- 9. Backbone LayoutManager渲染集合批量查看模型
- 10. Backbone中的智能渲染子視圖
- 11. 調試spring mvc查看渲染時間
- 12. 角JS渲染可變範圍功能查看並比較
- 13. backbone:渲染此集合
- 14. Backbone/Underscore/JSON渲染問題
- 15. Backbone LayoutManager渲染問題
- 16. 測試骨幹查看收藏時取回成功回調調用渲染
- 17. 查看渲染問題
- 18. Redmine緩慢查看渲染
- 19. 查看不渲染MVC 4
- 20. 查看與.fetch()不渲染
- 21. C++ MFC MDI查看渲染
- 22. 渲染PDF查看Grails的
- 23. Backbone.js查看不渲染EL
- 24. 錯誤渲染查看[.xhtml]
- 25. IBDesignable查看渲染超時
- 26. 在BackBone js中渲染視圖時調用javascript。 post-render回調?
- 27. 如果從渲染屬性調用多次調用方法
- 28. 多次渲染組件React.js
- 29. 多次渲染Pi-Chart?
- 30. 使用Backbone一次渲染3張圖像
您可以重載觸發器方法來跟蹤觸發了哪些事件。 – Loamhoof
可以請你提供一些例子嗎? – sublime