vue2.0提供了一個keep-alive組件用來緩存組件,避免多次加載相應的組件,減少性能消耗
創新互聯專注于托克托網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供托克托營銷型網站建設,托克托網站制作、托克托網頁設計、托克托網站官網定制、小程序設計服務,打造托克托網絡公司原創品牌,更為您提供托克托網站排名全網營銷落地服務。
keep-aliv是Vue.js的一個內置組件。它能夠不活動的組件實例保存在內存中,而不是直接將其銷毀,它是一個抽象組件,不會被渲染到真實DOM中,也不會出現在父組件鏈中。
它有兩個生命周期:
它提供了include與exclude兩個屬性,允許組件有條件地進行緩存。
keep-alive key
<!DOCTYPE html> <html> <head> <title></title> <script type="text/javascript" src="./vue.js"></script> </head> <body> <div id="app"> <keep-alive> <child-component key="1" v-if="seen" name="1"></child-component> <child-component key="2" v-if="!seen" name="2"></child-component> </keep-alive> <button @click="toggle">toggle</button> </div> <script type="text/javascript"> Vue.component('child-component', { template: `<input type="text" placeholder="enter">`, data() { return {} }, props: ["name"], mounted() { console.log(`${this.name} mounted`) } }) const vm = new Vue({ el: "#app", data: { seen: true }, methods: { toggle() { this.seen = !this.seen; } } }) </script> </body> </html>
key是標識元素不再被復用,注意key是Vue中的一個保留的屬性,不能作為prop傳遞給子組件,否則會在控制臺看到Vue的報錯
但是keep-alive標識不重復創建組件實例,也就是只會觸發一次created mounted事件,
利用兩者可以對組件的復用進行比較精細的管理
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創新互聯。
分享文章:Vue中keykeep-alive的實現原理
網頁路徑:http://vcdvsql.cn/article4/pepiie.html
成都網站建設公司_創新互聯,為您提供App開發、面包屑導航、手機網站建設、網站設計公司、品牌網站制作、網站排名
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯