日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

vue2.* element tabs tab-pane 動態加載組件操作

瀏覽:119日期:2023-01-03 14:23:34

一、重要部分

1、 注意 <component :is=item.content></component> :表明模板

<el-tab-pane v-for='(item) in editableTabs' :key='item.name' :label='item.title' :name='item.name' > <component :is=item.content></component> </el-tab-pane>

2、content: ’Jbxx’ ,其中 jbxx 是 模板

addTab (targetName, route) { let newTabName = ++this.tabIndex + ’’ this.editableTabs.push({ title: targetName, name: newTabName, content: ’Jbxx’ }) this.editableTabsValue = newTabName if (targetName === ’基本信息’) { this.show = true } else { this.show = false } // this.$router.push({ // path: route // }) }

二、完整代碼

<template> <el-tabs v-model='editableTabsValue' type='card' closable @tab-remove='removeTab'> <el-tab-pane v-for='(item) in editableTabs' :key='item.name' :label='item.title' :name='item.name' > <component :is=item.content></component> </el-tab-pane> </el-tabs></template> <script>import VueEvent from ’../model/VueEvent.js’import Jbxx from ’./jgxx/Jbxx’ export default { data () { return { show: false, editableTabsValue: ’2’, editableTabs: [{ title: ’Tab 1’, name: ’1’, content: ’’ }, { title: ’Tab 2’, name: ’2’, content: ’’ }], tabIndex: 2 } }, methods: { addTab (targetName, route) { let newTabName = ++this.tabIndex + ’’ this.editableTabs.push({ title: targetName, name: newTabName, content: ’Jbxx’ }) this.editableTabsValue = newTabName if (targetName === ’基本信息’) { this.show = true } else { this.show = false } // this.$router.push({ // path: route // }) }, removeTab (targetName) { let tabs = this.editableTabs let activeName = this.editableTabsValue if (activeName === targetName) { tabs.forEach((tab, index) => { if (tab.name === targetName) { let nextTab = tabs[index + 1] || tabs[index - 1] if (nextTab) { activeName = nextTab.name } } }) } this.editableTabsValue = activeName this.editableTabs = tabs.filter(tab => tab.name !== targetName) } }, mounted () { VueEvent.$on(’to-main’, (name, route) => { this.addTab(name, route) }) }, components: { Jbxx }}</script><style scoped></style>

補充知識:在vue中使用elementUI餓了么框架使用el-tabs,切換Tab如何實現實時加載,以及el-table表格使用總結...

當我們在開發中遇到tab切換,這時候用el的el-tabs感覺很方便

但當我在把代碼都寫完后,發現一個問題就是頁面打開時

雖然我們只能看見當前一個tab頁,但是vue會幫你把你寫的所有tab頁的內容都渲染出來了,只是其他的隱藏了,同時其他tab的js也都走了一邊,當你點擊tab時js就不會再去請求后臺

這種機制會造成一個問題,就是如果每個tab頁的數據都過大的時候,可能就會導致首次打開頁面卡頓現象,同時如果數據庫數據在實時發生變化的話,比如你一分鐘前打開的這個頁面,看的是tab1的內容,看了1分鐘后我想看tab2的內容,但此時tab2的內容后臺數據庫已經發生變化了,你能看到的只是1分鐘前的數據,那該怎么解決這個問題呢?

首先一開始一次加載所有tab的代碼是這樣的↓

<el-tabs v-model='activeName' @tab-click='handleClick' type='border-card'> <el-tab-pane label='待處理' name='first'> <processed/> <!--這里是自定義的子模塊,也就是自定義組件--> </el-tab-pane> <el-tab-pane label='已處理' name='second'> <un-processed/> </el-tab-pane></el-tabs>

這時候v-if的作用就可以發揮出來了,當v-if的值為false時vue是不會去渲染該標簽下的內容的

那我們就把tabs下的子模塊標簽上加v-if,一開始只設置其中一個為true其他都為false,當點擊tab切換時去改變v-if的值,代碼如下↓

<el-tabs v-model='activeName' @tab-click='handleClick' type='border-card'> <el-tab-pane label='待處理' name='first' :key='’first’'> <processed v-if='isFirst'/> </el-tab-pane> <el-tab-pane label='已處理' name='second' :key='’second’'> <un-processed v-if='isSecond'/> </el-tab-pane> </el-tabs>

js的代碼↓

<script>import Breadcrumb from ’@/components/Breadcrumb’import Processed from ’./processed’import UnProcessed from ’./unprocessed’export default { components: { Breadcrumb, Processed, UnProcessed }, data() { return { // 默認第一個Tab activeName: ’first’, isFirst: true, isSecond: false } }, methods: { handleClick(tab) { if (tab.name === ’first’) { this.isFirst = true this.isSecond = false } else if (tab.name === ’second’) { this.isFirst = false this.isSecond = true } } }}</script>

這樣就可以完美解決上面的問題,首次加載頁面只會渲染其中一個tab的內容,同時點擊tab切換時頁面重新渲染頁面,good!

el-table中動態表頭的寫法

其實就是一個v-for循環,根據后臺返回數據生成對應表頭

<el-table-column v-for='item in tableHeader' :key='item.key' :prop='item.key' :label='item.name' :formatter='item.formatter' show-overflow-tooltip></el-table-column>

js里的數據綁定:

tableHeader: [ { name: ’手機號碼’, key: ’partnerPhone’ }, { name: ’姓名’, key: ’partnerName’ }, { name: ’職位’, key: ’position’, formatter: this.posFormatter }, { name: ’團隊’, key: ’teamName’ }, { name: ’代理商’, key: ’agentName’ }, { name: ’狀態’, key: ’state’, formatter: this.stFormatter } ]

以上這篇vue2.* element tabs tab-pane 動態加載組件操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲综合五月| 国产亚洲高清在线观看| 91欧美极品| 水野朝阳av一区二区三区| 国产日韩欧美中文在线| 亚洲不卡视频| 国产亚洲亚洲| 国产91在线播放精品| 国产伦一区二区三区| 亚洲精品系列| 视频在线观看一区| 免费在线观看精品| 亚洲一级高清| 日韩精品免费一区二区在线观看 | 国产一区二区三区久久| 欧美在线观看天堂一区二区三区| 国产高清一区二区| 国产99久久久国产精品成人免费| 婷婷亚洲综合| av亚洲在线观看| 精品在线播放| 亚洲精品高潮| 日韩黄色av| 国产日韩欧美中文在线| 精品国产一区二区三区噜噜噜| 国产高清亚洲| 国产精品一级在线观看| 久久久久久婷| 色一区二区三区| 精品欧美日韩精品| 国产v综合v| 久久久精品网| 日韩在线免费| 国产亚洲综合精品| 免费观看在线色综合| 亚洲精品高潮| 精品国产亚洲一区二区三区在线| 国产精品久久777777毛茸茸| 精品亚洲a∨| 亚洲国内欧美| 中文视频一区| 久久香蕉精品| 久久国产视频网| 久久精品亚洲| 亚洲精品va| 午夜亚洲福利| 国产精品多人| 高清av一区二区三区| 欧美~级网站不卡| 欧美资源在线| 国产在线不卡一区二区三区| 精品亚洲美女网站| 国产一区二区高清| 久久99青青| 久久久成人网| 亚洲精品护士| 在线亚洲人成| 久久99伊人| 亚欧洲精品视频在线观看| 国产成人精品三级高清久久91| 久久国产电影| 9色精品在线| 国产欧美高清| 久久久人人人| aa亚洲婷婷| 国产欧美久久一区二区三区| www.51av欧美视频| 日韩欧美在线精品| 成人台湾亚洲精品一区二区| 亚洲婷婷在线| 国产日韩免费| 视频福利一区| 婷婷国产精品| 伊人久久婷婷| 午夜电影一区| 蜜桃国内精品久久久久软件9| 日韩欧美一区免费| 国产盗摄——sm在线视频| 热久久久久久久| 精品国产亚洲一区二区三区在线| 日韩一二三区在线观看| 999精品一区| 国产精品毛片在线看| 999久久久精品国产| 国产精品久久久久久妇女| 亚洲精品在线观看91| 一本一道久久a久久| 国产精品蜜月aⅴ在线| 黄色日韩在线| 国产欧美一区二区三区米奇| 精品日韩一区| 黄色日韩在线| 亚洲一区二区网站| 日韩在线播放一区二区| 日韩av一二三| 国产精品66| 精品丝袜在线| 日本综合精品一区| 亚洲精品成人一区| 欧美国产极品| 日韩天堂在线| 日韩av中文在线观看| 久久99偷拍| 99热免费精品| 欧美日韩伊人| 国产精品99视频| 午夜影院一区| 欧美色综合网| 四虎国产精品免费观看| 日韩在线a电影| 日本一二区不卡| 国产精品资源| 99xxxx成人网| 91九色综合| 蜜臀久久久99精品久久久久久| 毛片在线网站| 久久精品xxxxx| 国产欧美日韩在线一区二区 | 亚洲另类av| 蜜臀国产一区| 国产精品久久观看| 国产精东传媒成人av电影| 亚洲香蕉视频| 亚洲免费福利一区| 欧美日韩精品一本二本三本| 国产一区二区三区四区| 国产一区日韩一区| 国产精品久久久久久久久久10秀| 黑丝一区二区三区| 精品一区视频| 尤物tv在线精品| 日韩成人免费| 91视频一区| 久久国产视频网| 欧美日本久久| 久久爱www成人| 午夜日韩av| zzzwww在线看片免费| 国产传媒在线| 99re国产精品| 日本色综合中文字幕| 国产伦精品一区二区三区在线播放| 国产福利资源一区| 免费精品视频| 亚洲人成亚洲精品| 日本成人中文字幕在线视频| 中文精品在线| 日韩美女国产精品| 欧美日韩视频一区二区三区| 欧美黄色网页| 日韩理论视频| 夜鲁夜鲁夜鲁视频在线播放| 国产精品115| 欧美中文一区| 日本a级不卡| 日韩精品亚洲专区| 亚洲一区二区三区久久久| 亚洲视频二区| 亚洲精品成人一区| 久久av综合| 日韩一区二区三区免费| 亚洲激情偷拍| 91亚洲精品视频在线观看| 蜜桃一区二区三区在线| 91p九色成人| 久久久久久色 | 老牛影视精品| 在线国产一区| 日韩美女国产精品| 国产精品原创| 日韩在线观看一区二区| 国产精品宾馆| 亚洲香蕉网站| 欧美日韩网址| 在线手机中文字幕| 麻豆成人在线| 国产在线一区不卡| 国产日韩专区| 麻豆精品视频在线观看| 亚洲一级二级| 热久久久久久| 久久精品高清| 国产亚洲久久| 久久精品亚洲欧美日韩精品中文字幕| 只有精品亚洲| 国产精品不卡| 在线精品一区| 成人国产精品久久| 亚洲精品少妇| 国产91在线播放精品| 免费人成黄页网站在线一区二区 | 黄色在线网站噜噜噜| 亚洲久久视频| 免费污视频在线一区| 久久国产免费看| 91高清一区| 精品国产精品国产偷麻豆| 日韩中文字幕麻豆| 精精国产xxxx视频在线野外| 国产亚洲欧美日韩在线观看一区二区|