在這裡keep-alive配合了router-view使用,keep-alive本身是vue2.0的功能,並不是vue-router的,所以在vue1.0版本是不支援的。
在vue路由中使用meta配合實現效果
//在router檔案加上meta判斷
import vue from 'vue'
import router from 'vue-router'
vue.use(router)
export default new router(}}
})
如果我們的頁面是通過某個引數來載入內容的,當引數改變時,keep-alive包裹的元件請求獲取的資料不會再重新渲染頁面
當我們使用keep-alive時,我們的生命週期函式中將多出乙個activated的生命週期函式,當頁面引數修改,第二次載入時mounted不會執行,而activated依然能觸發(這裡city就是引數)
mounted () ,
//使用keepalive時元件會多乙個生命週期函式activated,當頁面第二次載入時mounted不會執行,而activated依然能觸發
activated ()
}
另 vue 2.1.0 新增
include - 字串或正規表示式。只有名稱匹配的元件會被快取。
exclude - 字串或正規表示式。任何名稱匹配的元件都不會被快取。
max - 數字。最多可以快取多少元件例項。
//不快取detail元件
vue中keep alive的使用
1.beforecreate 2.created 3.beforemount 4.mounted 5.beforeupdate 6.updated 7.beforedestory 8.destroyed 9.errorcaptured 當捕獲乙個來自子孫元件的錯誤時被呼叫。此鉤子會收到三個引數 錯誤...
vue中keep alive的使用
keep alive 是 vue 的內建元件,當它包裹動態元件時,會快取不活動的元件例項,而不是銷毀它們。和 transition 相似,keep alive 是乙個抽象元件 它自身不會渲染成乙個 dom 元素,也不會出現在父元件鏈中。在元件切換過程中將狀態保留在記憶體中,防止重複渲染dom,減少載...
vue使用keep alive實現資料快取不重新整理
到現在,接觸vue也小段時間了,專案進行到了一定程度,然而專案缺少了快取機制,所以每次跳轉頁面都會重新created一下資料,雖說系統的資料請求速度很快,但是這樣做對系統的效能會有很大的壞處的,所以到這裡就要對系統優化下,新增快取了。其實到現在,對於vue還是沒有玩通,每深挖一次,就會發現一次vue...