使用Vue 動態切換組件時(或SPA),有時我們在切換組件時想保存原本組件的資料:

例如有一個組件是表單,寫到一半點選其他組件,網頁把表單組件置換成別的組件,這時再切回表單組件時,會發現原本寫表單寫到一半的文字資料不見了。

這其實很合理,因為組件切換是把原本組件刪除,切換回來是再次動態產生,所以新組件自然沒有保存被刪除置換前的資料。

想解決這方法,只要在表單組件(或想暫時保存資料的組件)外,用<Keep-alive>標籤把該組件<組件>標籤包起來就好了!

原本是組件1和組件2切換

<組件1></組件1>
<組件2></組件2>

改成這樣即可

<Keep-alive>
 <組件1></組件1>
</Keep-alive>
<組件2></組件2>