2014-10-22 83 views
0

出於某種原因,我無法得到preventDestroy:真正的工作。 在我的示例中,當顯示applicationsListView時,加載視圖被刪除 - 即使我傳入了preventDestroy爲true。Backbone Marionette:如何使用preventDestroy:true

var loadingView = new App.Common.Loading.View(); 
    App.layout.mainRegion.show(loadingView); 


    // Fetch the applications 
    var fetchingApplications = App.request('application:entities'); 

    $.when(fetchingApplications).done(function(applications) { 

    var applicationsListView = new List.Applications({ 
     collection: applications 
    }); 

    App.layout.mainRegion.show(applicationsListView, { preventDestroy: true }); 

    }); 

回答

0

它從區域中刪除但未被銷燬。

當您通過preventDestroy:true,這意味着牽線木偶本身並不會在以前的視圖中調用銷燬方法和事件。銷燬方法提供綁定事件並調用子視圖上的銷燬等(https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.view.md#view-destroy)。

但撥打顯示preventDestroy:真依然清晰的innerHTML和地區提出了新的觀點(看attachHtml在backbone.marionette/src目錄/ marionette.region.js法)。

如果您重新使用現有的加載視圖,它可以是有幫助的。

相關問題