当前位置: 首页 > Web前端 > vue.js

element-ui的tabs页签页组件在使用vue-i18n切换语言后,按钮宽度发生变化之后定位不准确解决方案

时间:2023-03-31 14:23:12 vue.js

element-ui的tabs页面组件使用vue-i18n切换语言,宽度变化后按钮定位不准确。语言后,由于文本数量的修改和按钮宽度的变化,导致所选按钮下方的指示线定位不准确。我没有寻找解决方案。我自己写了一个。在这里分享。如果你有更好的解决方案,可以在下方留言,分享给大家。太感谢了。resetTabActivePosition($el){setTimeout(()=>{varactiveEl=$el.querySelector('.el-tabs__item.is-active');varlineEl=$el.querySelector('.el-tabs__active-bar');varstyle=getComputedStyle(activeEl);varpl=style.paddingLeft.match(/\d+/)[0]*1;varpr=style.paddingRight.match(/\d+/)[0]*1;varw=style.width.match(/\d+/)[0]*1;lineEl.style.transform='translateX('+(activeEl.offsetLeft+pl)+'px)';lineEl.style.width=(w-pl-pr)+'px';},100)}watch:{currentLang(){resetTabActivePosition(this.$refs.tabs.$el)}}在组件中绑定ref