2015-11-12 33 views
0

我有一個使用Backbonejs和Marionettejs開發的網頁。 我有很多意見,問題是當我第一次進入應用程序或我重新加載網頁,如果我在網頁中進行交互(做任何點擊),我認爲頁面停止加載,我在控制檯收到錯誤無法導航。 我試圖使用requirejs或ensurejs來解決這個問題,但我沒有成功。 有一種方法可以確保用戶發送事件或阻止用戶完成該網頁的加載嗎?使用Backbone.js我怎麼能確保所有的應用程序在任何用戶交互之前加載

回答

0

當你說「頁面加載」你的意思是DOM或實際下載的文件?

對我來說,它聽起來更像是一個路由問題。嘗試再次檢查是否指定了牽線木偶路由器的所有回調函數,並且還要導航到您要導航到的路線。

如果你指的是DOM,每木偶查看2回調約DOM渲染。第一個:onRender在新的HTML準備好進入DOM但尚未附加時調用,onDomRefresh在新的HTML實際位於DOM中時調用。因此,如果您需要知道何時呈現頁面,請使用onRender,而且您還必須知道是否在DOM中使用onDomRefresh。

像這樣:

var test = Marionette.ItemView.extend({ 
    onRender: function() { ... }, 
    onDomRefresh: function() { ... } 
}) 

要求是在asynchronos方式來加載文件。你絕對可以改進你的應用程序的體系結構。

請添加更多的細節,所以我可以給你一個更具體的答案。

我也製作了Backbone/Marionette/Require應用程序的骨架。查看:https://github.com/LucaMele/skeleton-marionette-require-gulp

相關問題