vue編寫tab切換元件
阿新 • • 發佈:2018-12-13
主要介紹編譯思想
完成效果如下圖
單擊頁數實現跳轉
程式碼如下圖所示
css:
*{ margin: 0; padding: 0; } .tabs{ width: 300px; height: 30px; } .tab{ float: left; width: 100px; height: 30px; } .tabs+div{ width: 300px; height: 300px; }
html:
<div id="app"> <switchover></switchover> </div> <template id="switchover"> <div> <div class="tabs"> <div class="tab" @click="switchTab('Paging1')"> <a>第一頁</a> </div> <div class="tab" @click="switchTab('Paging2')"> <a>第二頁</a> </div> <div class="tab" @click="switchTab('Paging3')"> <a>第三頁</a> </div> </div> <prince :is="currentTab" keep-alive></prince> </div> </template> <template id="Paging1"> <div> <p>這是第一頁</p> <h1>hahaha</h1> </div> </template> <template id="Paging2"> <div> <p>這是第二頁</p> </div> </template> <template id="Paging3"> <div> <p>這是第三頁</p> </div> </template>
js.
new Vue({ el:"#app", components:{ "switchover":{ template:"#switchover", data(){ return{ currentTab:"Paging1" } }, components:{ "Paging1":{ template:"#Paging1" }, "Paging2":{ template:"#Paging2" }, "Paging3":{ template:"#Paging3" } }, methods:{ switchTab(val){ this.currentTab=val; } } } } })