在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ vue多頁(yè)面應(yīng)用,頁(yè)面切換后,內(nèi)存未釋放

vue多頁(yè)面應(yīng)用,頁(yè)面切換后,內(nèi)存未釋放

項(xiàng)目框架:

vuejs+iview
每個(gè)頁(yè)面都是直接引用vuejs的庫(kù),并且new了一個(gè)新的vue實(shí)例

由于項(xiàng)目原因

無(wú)法使用webpack和vue-router做成單頁(yè)面應(yīng)用。(暫時(shí)) 瀏覽器環(huán)境都是IE瀏覽器,

問(wèn)題復(fù)現(xiàn)

我使用了IE11提供的內(nèi)存監(jiān)聽(tīng)工具(快捷鍵ctrl+shift+u)(或使用任務(wù)管理的內(nèi)存監(jiān)聽(tīng)), 可以發(fā)現(xiàn)頁(yè)面在切換or刷新后,
甚至頁(yè)面切換至一個(gè)空的頁(yè)面后, 內(nèi)存并沒(méi)有得到釋放,

例如

原有內(nèi)存是100Mb,頁(yè)面操作后增加至150MB,頁(yè)面跳轉(zhuǎn)至一個(gè)空的內(nèi)容頁(yè),內(nèi)存還是150MB,或者降低了一些,但還是大于100MB

想請(qǐng)教

如何在頁(yè)面離開(kāi)or刷新后銷(xiāo)毀所有已經(jīng)創(chuàng)建的vue實(shí)例和javascript 對(duì)象。

請(qǐng)問(wèn)是否有辦法!
水平不足,虛心請(qǐng)教,

回答
編輯回答
糖果果

瀏覽器不做后退功能了?
這個(gè)瀏覽器的特性讓前端屏蔽幾乎是不可能的
溝通能力也是工作能力的一部分,我覺(jué)得這不是一個(gè)技術(shù)問(wèn)題而是一個(gè)溝通問(wèn)題

2017年11月18日 00:03
編輯回答
孤星

js內(nèi)存泄漏的定位是比較麻煩的,因?yàn)樯婕暗嚼厥眨芏鄷r(shí)候,已經(jīng)釋放的內(nèi)存還沒(méi)有回收,要過(guò)一段時(shí)間才能看到占用量的下降,建議用chrome的Allocation timeline來(lái)監(jiān)測(cè)比較準(zhǔn)確:

clipboard.png

chrome的好處是可疑內(nèi)存可以定位到準(zhǔn)確的引用,但總的來(lái)說(shuō)還是比較難找的。我一般都是連續(xù)進(jìn)行循環(huán)操作多次(幾十次),來(lái)判斷是否真有內(nèi)存泄漏,如果真有的話,可以重點(diǎn)關(guān)注DOM對(duì)象和事件有沒(méi)有正確的處理,一般的js對(duì)象都不會(huì)有問(wèn)題,因?yàn)槔亲詣?dòng)回收的,不再使用的js變量通常都自動(dòng)回收掉了。

2017年11月24日 04:50