keep alive 的實現原理和使用方法

2021-10-23 13:54:03 字數 910 閱讀 9812

export default ,

created() ,

destroyed()

},mounted() );

this.$watch("exclude", val => );

},render() = this;

if (

// not included

(include && (!name || !matches(include, name))) ||

// excluded

(exclude && name && matches(exclude, name))

) const = this;

// 獲取鍵,優先獲取元件的name欄位,否則是元件的tag

const key: ?string =

vnode.key == null

? // same constructor may get registered as different local components

// so cid alone is not enough (#3269)

componentoptions.ctor.cid +

(componentoptions.tag ? `::$` : "")

: vnode.key;

// 命中快取,直接從快取拿vnode 的元件例項,並且重新調整了 key 的順序放在了最後乙個

if (cache[key])

// 不命中快取,把 vnode 設定進快取

else

}// keepalive標記位

vnode.data.keepalive = true;

}return vnode || (slot && slot[0]);

}}

keep alive實現原理

二 keep alive介紹與應用 2.1 keep alive是什麼 keep alive是乙個抽象元件 它自身不會渲染乙個dom元素,也不會出現在父元件鏈中 使用keep alive包裹動態元件時,會快取不活動的元件例項,而不是銷毀它們。乙個場景 使用者在某個列表頁面選擇篩選條件過濾出乙份資料列...

Keepalive工作原理

keepalived軟體起初是專為lvs負載均衡軟體設計的,用來管理並監控lvs集群系統中各個服務節點的狀態,後來又加入了可以實現高可用的vrrp功能。因此,keepalived除了能夠管理lvs軟體外,還可以作為其他服務 例如 nginx haproxy mysql等 的高可用解決方案軟體。kee...

keep alive的原理及使用

內建元件keep alive 主要用於保留元件狀態或避免重新渲染。keep alive生命週期鉤子函式 activated deactivated,每次進入離開過程都呼叫一次 comp1 頁面跳轉至 home頁面,home頁面不重新整理 comp2 頁面跳轉至 home頁面,home頁面重新整理 配...