所以我在這裏有兩個看法,他們的結構依賴於$(window).height()
。所以當我重新調整瀏覽器的大小或者控制檯時,我需要計算高度。下面的作品適合我,但我沒有看到任何人提到這樣做。重新渲染調整大小的backbone.js視圖?
所以我想知道這段代碼是否可怕或好或很好。很顯然,我所做的只是告訴我的程序何時實例化我的觀點。
// Play
$(document).ready(function() {
intro = new App.Views.Intro();
flight = new App.Views.Flight();
});
$(window).on('resize', function() {
intro = new App.Views.Intro();
flight = new App.Views.Flight();
});
不知道這是否符合指導原則,但我不希望這會在以後再回來傷害我。
編輯:不知道爲什麼我沒有想到這一點,但下面看起來很實用。我不想在視圖中重新渲染的原因是因爲它似乎必須添加一個remove()
方法並「調整」調整大小。如果你問我,不是很漂亮和有組織。示例How do I add a resize event to the window in a view using Backbone?
// Play
$(document).ready(function() {
intro = new App.Views.Intro();
flight = new App.Views.Flight();
});
$(window).on('resize', function() {
intro.render();
flight.render();
});
在視圖中是否有'.render()'方法可以調用?如果他們做了額外的事情,也許你可以將特定於格式的代碼重構成'.layout()'函數或其他東西,然後只需從你的resize處理程序調用它。 – voithos
是的,我有'.render()'方法,我在'initialize()'方法中調用'this.render()',然後在'render()'裏面說'this。$ el.height $(window).height())'或者添加一個css屬性。所以通過重新實例化重新大小,我重新渲染。我只是想建立一個偉大的事情,不希望壞習慣在身邊。 –
因此,而不是重新實例化它,你說的做'intro.layout()' –