成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

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

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

瀏覽:92日期: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
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美日韩免费高清一区色橹橹| 日本三级亚洲精品| 亚洲尤物视频在线| 欧美日韩综合网| 欧美α欧美αv大片| 国产毛片精品国产一区二区三区| 久久青青草原一区二区| 一区二区三区美女| 一区二区视频在线观看| 欧美激情在线看| 不卡一二三区首页| 日韩一区二区三区免费观看| 精品午夜久久福利影院| 欧美日韩在线播放| 亚洲成人高清在线| 久久精品123| 午夜精品一区二区三区三上悠亚| 国产伦精品一区二区三| 亚洲女子a中天字幕| 亚洲国产高清一区二区三区| 国产精品麻豆一区二区| 欧美亚洲不卡| 中文字幕二三区不卡| 欧美一区二区三区四区在线观看地址 | 久久久国产精品一区二区三区| 亚洲精品一二三| 日韩网站在线| 亚洲综合偷拍欧美一区色| 国产精品久久久久久久久久妞妞| 亚洲日穴在线视频| 亚洲国产mv| 亚洲精品中文字幕在线观看| 国产亚洲网站| 首页综合国产亚洲丝袜| 欧洲人成人精品| 免费成人小视频| 欧美日韩黄色影视| 福利电影一区二区| 久久久久久免费| 欧美日韩另类丝袜其他| 亚洲免费色视频| 国产精品亚洲综合久久| 午夜精品久久久| 欧美三级日韩在线| 成人黄色777网| 中文字幕欧美国产| 国产欧美日韩一区二区三区在线 | 一区二区三区自拍| 麻豆久久精品| 精品中文字幕一区二区| 日韩欧美一二三| 国模精品娜娜一二三区| 亚洲一区二区在线免费观看视频 | 欧洲亚洲国产日韩| 国产精品一区二区不卡| 久久久久国产一区二区三区四区 | 精品系列免费在线观看| 精品国产91洋老外米糕| 狠狠色狠狠色综合人人| 亚洲国产视频直播| 在线观看av一区二区| 风间由美中文字幕在线看视频国产欧美| 国产欧美在线观看一区| 国产精品久久亚洲7777 | 欧美二区在线| 一区av在线播放| 在线观看精品一区| av网站一区二区三区| 亚洲人成影院在线观看| 91黄色免费版| 99精品视频在线免费观看| 亚洲激情自拍偷拍| 91精品蜜臀在线一区尤物| 国产主播精品| 日本美女一区二区三区视频| 久久久综合网站| 久久国产精品免费一区| 东方aⅴ免费观看久久av| 综合av第一页| 正在播放亚洲一区| 亚洲国产综合在线看不卡| 久久精品久久综合| 国产精品午夜电影| 欧美图区在线视频| 99久久99久久综合| 亚洲sss视频在线视频| 欧美va亚洲va香蕉在线| 午夜亚洲视频| 91在线精品秘密一区二区| 视频一区国产视频| 国产日韩欧美综合在线| 色综合久久88色综合天天6| 99精品热视频| 三级欧美在线一区| 久久久精品中文字幕麻豆发布| 久久久一二三| 牛夜精品久久久久久久99黑人| 三级精品在线观看| 中文字幕av不卡| 91久久线看在观草草青青| 93久久精品日日躁夜夜躁欧美| 视频在线在亚洲| 国产视频911| 欧美日韩在线三级| 精品96久久久久久中文字幕无| 久久99精品久久久| 亚洲视频狠狠干| 精品国产一区a| 在线一区二区三区四区五区| 好吊色欧美一区二区三区视频| 国产精品18久久久| 亚洲一区二区精品3399| 国产视频一区不卡| 正在播放一区二区| 久久国产成人| 欧美理论在线| 国产一区二区三区免费播放| 亚洲中国最大av网站| 亚洲国产精品t66y| 日韩欧美成人一区| 欧美亚洲一区二区在线| 亚洲国产导航| 91啪在线观看| 国产精品资源网站| 首页国产丝袜综合| 亚洲男同性恋视频| 欧美国产国产综合| 日韩视频免费观看高清在线视频| 性8sex亚洲区入口| 国产综合视频| 成人免费不卡视频| 理论片日本一区| 亚洲aⅴ怡春院| 亚洲日穴在线视频| 欧美激情综合五月色丁香小说| 欧美一级xxx| 欧美日韩亚洲综合| 蜜桃av一区| 亚洲精品在线免费| 欧美特黄一区| 99这里只有精品| 成人综合在线观看| 国产精品主播直播| 精品在线观看免费| 首页欧美精品中文字幕| 亚洲精品视频观看| 国产精品女人毛片| 久久久综合视频| 日韩三级.com| 欧美乱妇15p| 老司机精品福利视频| aa国产精品| 亚洲欧洲日本国产| 国产精品初高中精品久久 | 久久99国产精品久久| 日韩精品1区2区3区| 亚洲色图欧美激情| 国产午夜精品理论片a级大结局| 欧美一区二区在线观看| 欧美人伦禁忌dvd放荡欲情| 日本福利一区二区| 91久久一区二区| 日本高清视频一区二区| 亚洲一区欧美激情| 亚洲影视在线| 国产精品日韩| 香蕉视频成人在线观看| 一本一本久久a久久精品综合妖精| 影音欧美亚洲| 在线看片成人| 夜夜嗨一区二区三区| 国产日韩1区 | 91久久一区二区| 在线欧美一区二区| 欧美三级资源在线| 欧美日韩免费视频| 91精品国产综合久久精品图片| 在线成人免费观看| 欧美一级日韩一级| 精品久久久久久久久久久久久久久久久| 欧美本精品男人aⅴ天堂| 日韩欧美亚洲一区二区| 精品国产乱码久久| 欧美极品另类videosde| 国产精品色哟哟网站| 中文字幕一区二区三区四区不卡 | 午夜电影一区二区| 午夜久久福利影院| 日本成人在线一区| 久久国产精品色婷婷| 狠狠色丁香久久婷婷综合_中| 国内精品视频一区二区三区八戒| 国产真实乱偷精品视频免| 国产美女在线观看一区| 国产精品系列在线播放| 成人一区在线观看| 97精品电影院| 亚洲性感激情| 毛片一区二区| 欧美日韩激情在线|