vue-同一个页面多次使用同一个G2图组件显示在一起原因

在Vue开发中遇到页面复用饼图组件导致显示异常的问题,原因是组件内多个饼图共用同一个div id。解决方案包括动态生成唯一id和通过DOM元素选择器获取canvas。动态id可避免绘图冲突,而直接选取DOM元素能更精确地控制每个饼图的绘制位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在写页面的时候,同一页面复用了同一饼图组件,然后就出现了如下图:

下面的饼图应该在右边的位置,然后用控制台看了下,第一个图的div里面有两个饼图canvas,第二个图的div里面为空。

g2绘图原理就是根据div的id去查找绘制在那个div里面,所以组件内不能写固定id。

解决方法有两种:

1、动态生成字符串组成id

2、以获取dom元素的方式  

this.$el.querySelector(".canvas")

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值