内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

詳解vue2.0使用動(dòng)態(tài)組件實(shí)現(xiàn)Tab標(biāo)簽頁(yè)切換效果(vue-cli)

在 vue 中,實(shí)現(xiàn) Tab 切換主要有三種方式:使用動(dòng)態(tài)組件,使用 vue-router 路由,使用第三方插件。

10年的殷都網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整殷都建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“殷都網(wǎng)站設(shè)計(jì)”,“殷都網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

因?yàn)檫@次完成的功能只是簡(jiǎn)單切換組件,再則覺(jué)得使用路由切換需要改變地址略微麻煩,所以使用的是動(dòng)態(tài)組件實(shí)現(xiàn),如果是在大型應(yīng)用上,可能使用 vue-router 會(huì)方便一些。

先看下最終實(shí)現(xiàn)的效果,結(jié)構(gòu)比較簡(jiǎn)單,頂部的三個(gè) Tab 標(biāo)簽用于切換,內(nèi)容區(qū)域分別為三個(gè)子組件。

詳解vue2.0 使用動(dòng)態(tài)組件實(shí)現(xiàn) Tab 標(biāo)簽頁(yè)切換效果(vue-cli)

效果預(yù)覽

關(guān)鍵代碼及分析如下:

<template>
// 每一個(gè) tab 綁定了一個(gè)點(diǎn)擊事件,傳入的參數(shù)對(duì)應(yīng)著 tab 下的組件名
<div class="tabs">
 <div class="tab" @click="toggleTab('prince')"><a>小王子</a></div>
 <div class="tab" @click="toggleTab('rose')"><a>小玫瑰</a></div>
 <div class="tab" @click="toggleTab('fox')"><a>小狐貍</a></div>
</div>
// 子組件,顯示不同的 tab
// is 特性動(dòng)態(tài)綁定子組件
// keep-alive 將切換出去的組件保留在內(nèi)存中
<prince :is="currentTab" keep-alive></prince>
</template>

<script>
// 引入子組件
import prince from './components/prince';
import rose from './components/rose';
import fox from './components/fox';
export default {
 name: 'app',
 data () {
  return {
   currentTab: 'prince' // currentTab 用于標(biāo)識(shí)當(dāng)前觸發(fā)的子組件
  };
 },
 components: { // 聲明子組件
  prince,
  rose,
  fox
 },
 methods: {
  toggleTab: function(tab) {
   this.currentTab = tab; // tab 為當(dāng)前觸發(fā)標(biāo)簽頁(yè)的組件名
  }
 }
}
</script>

使用動(dòng)態(tài)組件實(shí)現(xiàn) Tab 標(biāo)簽頁(yè)切換的基本過(guò)程可以概括為:

  • 在父組件中定義一個(gè)主 tab 標(biāo)簽頁(yè),用于切換,同時(shí)為每個(gè) tab 綁定點(diǎn)擊事件,傳入該 tab 的子組件名,最后引入并定義子組件
  • 子組件中是各 tab 標(biāo)簽頁(yè)的內(nèi)容
  • 使用 is 特性動(dòng)態(tài)切換子組件,使用 kee-alive 緩存

is 特性一般用于原生 HTML 元素?cái)U(kuò)展

舉個(gè)栗子,一般在 ul 標(biāo)簽中只能嵌套 li 標(biāo)簽,但是我們現(xiàn)在想在 ul 標(biāo)簽內(nèi)使用自定義組件 v-li。

<ul>
  <v-li></v-li>
</ul>

而這樣寫肯定是不行的,這就需要用到 is 特性了。

<ul>
  <li is="v-li"></li>
</ul>

這也就是為什么利用 is 特性可以實(shí)現(xiàn)動(dòng)態(tài)切換組件的效果。

keep-alive 指令可以將切換出去的組件保留在內(nèi)存中,可以保留它的狀態(tài)或避免重新渲染。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

本文標(biāo)題:詳解vue2.0使用動(dòng)態(tài)組件實(shí)現(xiàn)Tab標(biāo)簽頁(yè)切換效果(vue-cli)
當(dāng)前URL:http://m.rwnh.cn/article26/igjojg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站網(wǎng)站導(dǎo)航、網(wǎng)頁(yè)設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站軟件開(kāi)發(fā)、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
扬中市| 旬邑县| 泗水县| 长治市| 太仆寺旗| 丹东市| 通海县| 昌平区| 禄丰县| 靖远县| 永川市| 榆社县| 抚远县| 深州市| 陕西省| 凌海市| 金湖县| 屯昌县| 合水县| 获嘉县| 中江县| 教育| 宝清县| 射阳县| 临朐县| 高淳县| 高唐县| 新源县| 金山区| 津南区| 奉节县| 六盘水市| 德化县| 呼伦贝尔市| 寿宁县| 河北省| 合阳县| 济南市| 大同市| 六枝特区| 灵宝市|