You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在初始化后获取所有ECharts实例?无需知晓ID的实现方法

如何在不知晓实例ID的情况下获取所有ECharts实例?

方法:通过遍历DOM容器批量获取实例

ECharts初始化后会给对应容器DOM元素添加专属标识属性,可借助这一点获取所有实例:

  1. 筛选页面中所有带有ECharts标识属性的DOM元素(旧版本为_echarts_instance_,新版本为data-echarts-instance)
  2. 对每个符合条件的DOM元素,调用ECharts全局方法echarts.getInstanceByDom()获取对应实例

代码示例

// 筛选所有ECharts容器元素
const echartsContainers = document.querySelectorAll('[data-echarts-instance], [_echarts_instance_]');

// 转换为数组并获取对应实例,过滤无效结果
const allEChartsInstances = Array.from(echartsContainers)
  .map(container => echarts.getInstanceByDom(container))
  .filter(instance => instance !== null);

// 输出所有实例
console.log(allEChartsInstances);

补充说明

  • 该方法无需提前保存实例引用,适用于无法修改初始化代码的场景(比如第三方页面)
  • 如果是自有项目,也可以在初始化实例时手动将实例存入全局数组,能更高效地直接获取实例集合

内容的提问来源于stack exchange,提问作者Olejon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 12:27:03