当前位置:   article > 正文

echarts容器的宽度根据父元素宽度变化进行自适应(页面侧边栏收缩)_echart 左侧收缩 resize

echart 左侧收缩 resize

问题:

        页面侧边栏收缩时,echart图片的宽度没有随侧边栏收缩而改变

解决办法:

  1. onMounted(() => {
  2. setTimeout(() => {
  3. // this.myCharts();
  4. const resizeOb = new ResizeObserver((entries) => {
  5. for (const entry of entries) {
  6. echarts.getInstanceByDom(entry.target).resize();
  7. }
  8. });
  9. resizeOb.observe(followUpEchart.value);
  10. });
  11. });

ResizeObserver (具体监听哪一个

监听某一个DOM节点的变化,这种变化包括但不仅限于:

  • 某个节点的出现和隐藏
  • 某个节点的大小变化
语法
  1. const resizeOb = new ResizeObserver((entries) => {
  2. for (const entry of entries) {
  3. //写入要监听的内容
  4. //echarts.getInstanceByDom(entry.target).resize();
  5. }
  6. });
  7. //传入需要监听的DOM元素
  8. resizeOb.observe(followUpEchart.value);
  9. //取消监听某个DOM节点
  10. unobserve()
  11. //例如 1 秒后取消
  12. setTimeout(() => {
  13. resizeOb.unobserve(followUpEchart.value);
  14. }, 1000);
  15. //取消对所有节点的监听
  16. disconnect()
  17. //例如 1 秒后取消
  18. setTimeout(() => {
  19. resizeOb.disconnect(followUpEchart.value);
  20. }, 1000);

tips:

  • window.resize监听所有且只有window对象才有resize事件)事件监听每一个元素大小变化,但是reize事件会在一秒内触发将近60次,很容易在改变窗口大小时导致性能问题
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/223218
推荐阅读