詳解VueJs異步動(dòng)態(tài)加載塊
首先定義組件為異步加載
define(['jquery','vue'],function($,Vue){ Vue.component('comp1',function(resolve){ require(['component/comp1'],resolve); }); Vue.component('comp2',function(resolve){ require(['component/comp2'],resolve); }); var b = new Vue({ el:"#app", data:{ currentView:'comp1' }, methods:{ toggleView:function(){ console.log(this.currentView); this.currentView = this.currentView=='comp1'?'comp2':'comp1'; } } }); })
具體可以參考vuejs的異步組件和動(dòng)態(tài)組件。然后是html里面的代碼
<div id="app"> <keep-alive><!-- 使用keep-alive可以讓動(dòng)態(tài)被切出去的組件繼續(xù)保存在內(nèi)存中(只是隱藏看不到),卻回來之后會(huì)繼續(xù)之前的狀態(tài)和數(shù)據(jù) --> <component v-bind:is="currentView"></component> </keep-alive> <button type="button" v-on:click="toggleView">切換view</button> </div>
這種結(jié)構(gòu)的好處是,頁面初始化加載的時(shí)候只會(huì)加載需要的那個(gè)組件相關(guān)的內(nèi)容,沒切換到的那個(gè)組件不加載,使頁面加載的速度加快。同時(shí),每個(gè)組件加載過一次之后切換出再切回來不會(huì)重復(fù)加載相關(guān)內(nèi)容和重復(fù)執(zhí)行渲染
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue2.0開發(fā)實(shí)踐總結(jié)之疑難篇
這篇文章主要為大家總結(jié)了vue2.0開發(fā)實(shí)踐的疑難,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12Element-UI表格嵌入popover遇到的問題及解決方案
在表格中我們通常需要在每一行的一些單元格中顯示popover,這篇文章主要給大家介紹了關(guān)于Element-UI表格嵌入popover遇到的問題及解決方案,需要的朋友可以參考下2023-11-11element-ui中導(dǎo)航組件menu的一個(gè)屬性:default-active說明
這篇文章主要介紹了element-ui中導(dǎo)航組件menu的一個(gè)屬性:default-active說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05對(duì)vue中v-on綁定自定事件的實(shí)例講解
今天小編就為大家分享一篇對(duì)vue中v-on綁定自定事件的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-09-09