vue學(xué)習(xí)筆記之動(dòng)態(tài)組件和v-once指令簡(jiǎn)單示例
本文實(shí)例講述了vue動(dòng)態(tài)組件和v-once指令。分享給大家供大家參考,具體如下:
點(diǎn)擊按鈕時(shí),自動(dòng)切換兩個(gè)組件
<component :is='type'></component>,當(dāng)點(diǎn)擊按鈕之后,會(huì)自動(dòng)清除原來的組件,顯示新的組件。
每一次切換,都需要銷毀+創(chuàng)建
但是這樣消耗有點(diǎn)大,所以我們?cè)谧咏M件中引用了v-once指令,這樣可以將顯示在頁面中的組件存到內(nèi)存中,不會(huì)完全銷毀。
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>動(dòng)態(tài)組件和v-once指令</title> <script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script></head><body><div id='app'> <component :is='type'></component><!-- <child-one v-if='type === ’child-one’'></child-one>--><!-- <child-two v-if='type === ’child-two’'></child-two>--> <button @click='handleBtnClick'>change</button></div></body></html><script> Vue.component(’child-one’, { template: ’<div v-once>child-one</div>’ }) Vue.component(’child-two’, { template: ’<div v-once>child-two</div>’ }) var vm = new Vue({ el: ’#app’, data: { type: ’child-one’ }, methods: { handleBtnClick: function () {this.type = (this.type === ’child-one’ ? ’child-two’ : ’child-one’); } } })</script>
運(yùn)行結(jié)果:


感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。
希望本文所述對(duì)大家vue.js程序設(shè)計(jì)有所幫助。
相關(guān)文章:
1. ASP中實(shí)現(xiàn)字符部位類似.NET里String對(duì)象的PadLeft和PadRight函數(shù)2. vue前端RSA加密java后端解密的方法實(shí)現(xiàn)3. php使用正則驗(yàn)證密碼字段的復(fù)雜強(qiáng)度原理詳細(xì)講解 原創(chuàng)4. JSP+Servlet實(shí)現(xiàn)文件上傳到服務(wù)器功能5. vue項(xiàng)目登錄成功拿到令牌跳轉(zhuǎn)失敗401無登錄信息的解決6. 基于javaweb+jsp實(shí)現(xiàn)企業(yè)財(cái)務(wù)記賬管理系統(tǒng)7. asp批量添加修改刪除操作示例代碼8. ASP動(dòng)態(tài)網(wǎng)頁制作技術(shù)經(jīng)驗(yàn)分享9. CSS可以做的幾個(gè)令你嘆為觀止的實(shí)例分享10. 淺談?dòng)蓀osition屬性引申的css進(jìn)階討論

網(wǎng)公網(wǎng)安備