Sencha Touch的性能優(yōu)化
Sencha Touch 跟Ext js一個提供了豐富且高級的組件讓我們能快速的開發(fā)出一個跨手機平臺而且很絢麗的產(chǎn)品,這聽起來不錯,但很快我們發(fā)現(xiàn)了一個嚴重的問題,手機上的效果根本沒有在PC上用chrome打開的效果一樣讓人有刷刷的快感,甚至讓人痛苦. Sencha Touch和ext一樣,組件是類式繼承的,大大降低了使用和學習的周期.但缺點也是很明顯的,你每增加一個組件,內(nèi)存消耗就增加很多,可能你已經(jīng)使用minify/JSBuilder/YUI compressor等工具壓縮過你的代碼了,如果性能還不佳,那么可以看看以下是個人的一點建議
1.每個組件都應該考慮它的xtype,如果可以使用container就不要使用一個panel了
2.list一列的個數(shù)顯示一屏就可以了,list有很多高級的功能,但性能非常的差,只能通過減少加載項來解決
3.盡量不要使用tbar/bbar,Sencha Touch的提供的toolbar功能強大,按鈕也很易用,但使用的DOM元素也非常的多,自己寫一個bar是非常必要的
4.把不在置頂?shù)膙iew中的DOM給刪除,有時候,我們的項目中有好幾個view,但我們一時間內(nèi)是不可能同時查看兩個view的,應該把其他view的DOM元素給釋放了
從上面看來,性能優(yōu)化的關鍵是控制DOM元素的數(shù)量,但Sencha Touch還會對一些元素綁定事件,如何開始就不顯示這些元素,那么內(nèi)存開銷會更低