Vue Element Plus中el-tabs切换ECharts图表时页面跳到顶部怎么办?

vue element plus中el-tabs切换echarts图表时页面跳到顶部怎么办?

el-tabs 点击 el-tab-pane 带有 v-if 的 echarts 图表时页面跳至顶部

问题描述

vue elementpuls 中使用 el-tabs 时,el-tab-pane 中包含了三个使用 v-if 的 echarts 图表。当点击这些图表时,页面会自动滚动到顶部。

解决方案

1. 设置图表容器的高度

有一种可能的原因是 echarts 图表的容器高度在 v-if 切换时发生了变化,导致页面重新布局并跳到顶部。给图表容器添加一个固定高度,例如:

.chart-container {
  height: 500px;
}

2. 重新考虑使用 v-if

echarts 图表并不需要使用 v-if 来控制显示隐藏。可以尝试使用 v-show,并在合适的时机进行初始化或设置选项:

<el-tab-pane v-show="tab1visible">
  <div id="chart1"></div>
</el-tab-pane>
const chart1 = echarts.init(document.getElementById('chart1'));

if (tab1Visible) {
  // 初始化图表
  chartInstance.setOption(/* ... */);
} else {
  // 设置图表选项
  chartInstance.setOption(/* ... */);
}

以上就是Vue Element Plus中el-tabs切换ECharts图表时页面跳到顶部怎么办?的详细内容,更多请关注硕下网其它相关文章!