如何解決element-ui中多個(gè)table在tab切換時(shí)出現(xiàn)寬度縮小問(wèn)題
解決element-ui中多個(gè)table在tab切換時(shí)出現(xiàn)寬度縮小問(wèn)題
用的是vue
的element-ui
前端框架
今天遇到一個(gè)小問(wèn)題,花了我?guī)讉€(gè)小時(shí)才研究
先看圖
我需要在兩個(gè)tab
中各自放一個(gè)table
,并且其中一個(gè)table
的數(shù)據(jù)變化時(shí),另一個(gè)table
也需要變化,當(dāng)我在第一個(gè)table
刪除數(shù)據(jù)后,第一個(gè)table
會(huì)刷新,然后第二個(gè)table
也會(huì)刷新。
然后我切換到第二個(gè)tab
時(shí),table
變成這樣了,表格的寬度縮小。
研究了好久,最后用
以下方法解決
//我第一個(gè)table的ref值為tableContract,第二個(gè)table的ref值為tableTodo //第一個(gè)tab的name值為contract,第二個(gè)tab的name值為todo //tab的tab-click事件 tabClick({name}){ //根據(jù)點(diǎn)擊的tab的name值,判斷對(duì)應(yīng)的table let ref=(name=='contract'?'tableContract':'tableTodo') this.$nextTick(()=>{ this.$refs[ref].doLayout() }) }
其實(shí)一開始也有用到table
的doLayout
,但我忽略一個(gè)重點(diǎn)的地方,就是用nextTick
,記得之前在哪個(gè)博客看過(guò),element-ui
很多問(wèn)題用nextTick
跟setTimeout
都能解決的
更新?。?/h2>
后面實(shí)踐后,發(fā)現(xiàn)用nextTick
還是有點(diǎn)小bug,如下圖
這是因?yàn)橐粋€(gè)tab
有滾動(dòng)條切換到一個(gè)沒有滾動(dòng)條的tab
,后面用setTimeout
就解決問(wèn)題了,測(cè)試過(guò)延遲100毫秒,比較完美
//我第一個(gè)table的ref值為tableContract,第二個(gè)table的ref值為tableTodo //第一個(gè)tab的name值為contract,第二個(gè)tab的name值為todo //tab的tab-click事件 tabClick({name}){ //根據(jù)點(diǎn)擊的tab的name值,判斷對(duì)應(yīng)的table let ref=(name=='contract'?'tableContract':'tableTodo') setTimeout(()=>{ this.$refs[ref].doLayout() },100) }
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue 使用v-if切換輸入框時(shí)導(dǎo)致輸入框的數(shù)據(jù)內(nèi)容沒有清空的問(wèn)題解決(兩種解決方法)
這篇文章主要介紹了vue 使用v-if切換輸入框時(shí)導(dǎo)致輸入框的數(shù)據(jù)內(nèi)容沒有清空的問(wèn)題解決,本文給大家分享兩種解決方法,需要的朋友可以參考下2023-05-05基于vue-cli3和element實(shí)現(xiàn)登陸頁(yè)面
這篇文章主要介紹了vue-cli3和element做一個(gè)簡(jiǎn)單的登陸頁(yè)面本文實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11van-dialog 組件調(diào)用報(bào)錯(cuò)的解決
這篇文章主要介紹了van-dialog 組件調(diào)用報(bào)錯(cuò)的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05Vue如何實(shí)現(xiàn)多頁(yè)面配置以及打包方式
這篇文章主要介紹了Vue如何實(shí)現(xiàn)多頁(yè)面配置以及打包方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10Vue文件的組織結(jié)構(gòu)不合理之優(yōu)化項(xiàng)目結(jié)構(gòu)詳解
在這篇博客中,我們將探討 Vue 文件組織結(jié)構(gòu)不合理的幾個(gè)常見問(wèn)題,并提供解決方案,以幫助開發(fā)者創(chuàng)建更清晰、更高效的項(xiàng)目文件結(jié)構(gòu),希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03關(guān)于Elementui中toggleRowSelection()方法實(shí)現(xiàn)分頁(yè)切換時(shí)記錄之前選中的狀態(tài)
這篇文章主要介紹了關(guān)于Elementui中toggleRowSelection()方法實(shí)現(xiàn)分頁(yè)切換時(shí)記錄之前選中的狀態(tài),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03