前端项目多次引用echarts组件只显示之后一次问题解决

7 篇文章 0 订阅
5 篇文章 0 订阅

前言: 这个解决方案不管是react项目还是vue项目都适用(我采用的是获取dom的id然后渲染效果的方式)

应该是你给echarts图表渲染的渲染容器id值写死了,所以DOM在构建的时候会销毁覆盖之前加载效果,然后只有最后一处引用会显示图表效果。

页面效果:
在这里插入图片描述
我的项目里,我是将折线图组件抽离,单独封装一个组件然后引用,这里我们可以通过在组件引用的时候向引用的子组件传递一个自定义的不同的id值
在这里插入图片描述
在这里插入图片描述
这时候正常的显示效果:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于前端一次性加载太多的chart图,可以考虑以下优化方案: 1. 数据分页加载:将图表数据进行分页,每次只加载当前页面需要展示图表数据。可以通过懒加载或者滚动加载的方式,在用户滚动到图表所在位置时再进行加载。 2. 延迟加载:将部分图表的加载延迟到用户真正需要查看时再进行加载。可以通过监听用户的操作或者滚动行为,在用户需要查看某个图表时才进行加载。 3. 图表数据压缩:对于图表数据进行压缩处理,减小数据量,从而减少前端加载时间和带宽消耗。可以使用一些数据压缩算法或者使用更简洁的数据表示方式。 4. 图表渲染优化:对于大量图表的渲染,可以使用一些性能较好的图表库或者框架,如echarts、D3.js等。同时,可以对图表进行缓存,避免重复渲染。 5. 图表异步加载:对于页面上的多个图表,可以使用异步加载的方式,避免一个图表的加载阻塞其他图表展示。 6. 图表数据缓存:对于一些静态数据或者不经常变动的数据,可以进行缓存,避免每次都重新请求数据。可以使用localStorage或者sessionStorage进行数据缓存。 7. 图表懒加载:只加载当前可见区域内的图表,当用户滚动到其他区域时再进行加载。 综合使用以上优化方案,可以有效减少前端一次性加载太多chart图所带来的性能问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值