何謂 Memory Leak?
Angular 是 SPA (Single-page application) 框架,用來開發 SPA。
SPA 最大的特點就是它不重新整理頁面,不重新整理就容易造成 memory leak。
舉個簡單例子:
有一個頁面,我們寫了一個 setInterval 執行一些程式碼。
當使用者離開這個頁面去下一個頁面時,傳統網站 (非 SPA),會重新整理頁面,之前的 setInterval 會被刪除掉。
然後 SPA 網站不同,它不會重新整理頁面,之前的 setInterval 會一直持續執行。
我們姑且不論這個現象算不算真正意義上的 memory leak,但這個現象肯定是不正確的。
本篇,我們就來聊一聊在用 Angular 開發 SPA 如何避開上述這種不正確的現象。