Hello! 欢迎来到小浪资源网!



Vue ElementUI中el-tabs组件下el-tab-pane使用v-if导致页面滚动到顶部的解决方法是什么?


Vue ElementUI中el-tabs组件下el-tab-pane使用v-if导致页面滚动到顶部的解决方法是什么?

vue elementui 中使用 el-tabs 时 el-tab-pane 中使用 v-if 引发页面滚动问题

问题描述

vue elementui 项目中使用 el-tabs 时,在 el-tab-pane 中使用了多个 v-if 条件渲染 echarts 图表,点击切换选项卡时,页面滚动条会自动回到页面顶部。

解决方案

立即学习前端免费学习笔记(深入)”;

方案 1:固定图表容器高度

此问题可能是由于 echarts 图表在 v-if 控制下出现容器高度变化造成的。可以尝试给图表容器设置一个固定的高度,例如:

.echarts-container {   height: 500px; }

方案 2:优化初始化时机

如果图表初始化时机不当,也可能导致滚动问题。考虑在其他时机初始化图表,例如在选项卡被激活时初始化。

方案 3:使用 v-show 取代 v-if

虽然问题描述中提到必须使用 v-if,但实际上对于 echarts 图表,可以使用 v-show 代替 v-if。v-show 不会导致容器高度变化,可以解决滚动问题。

相关阅读