DataGear 6.0.0:看板 API 2.0 与内置图表插件完成重构

2026-07-15 22 预计阅读时间: 1 分钟
来源: oschina.net AI 摘要 Original link

Disclaimer: This article is an AI-assisted summary. Read it together with the original source when precision matters. The summary may omit context, version differences, or edge cases and is not official documentation.

预计阅读时间:9 分钟

DataGear 6.0.0 的核心变化集中在看板开发链路:新增 API 2.0 版本环境,并重构看板 API 与内置图表插件。与此同时,看板源码编辑模式补上了“替换”和“自定义插入图表元素属性”功能。这次升级不仅影响可视化设计人员,也会直接影响维护自定义看板、图表插件和页面脚本的开发者。

API 2.0 是一次明确的兼容边界

新版本专门提供 API 2.0 环境,意味着看板 API 的变化不应被当成普通的小版本增量。对于已有项目,升级前最需要梳理的是看板源码中所有依赖旧 API 的位置,包括:

  • 直接调用看板对象或图表对象的方法;
  • 读取图表状态、数据集结果和元素属性的脚本;
  • 自定义事件处理代码;
  • 基于旧版内置图表插件扩展的实现;
  • 复制到多个看板中的公共 JavaScript 片段。

不要只检查能否打开看板。页面成功加载,并不代表筛选联动、定时刷新、下钻或者自定义事件仍按原逻辑执行。更可靠的办法是给现有看板建立一份交互清单,在 API 2.0 环境中逐项回归。

检查对象 建议验证内容
图表渲染 初始数据、空数据和异常数据能否正常展示
参数传递 查询条件、默认值和多值参数是否正确
图表联动 点击、筛选、下钻和跳转是否仍然生效
页面脚本 初始化顺序、事件回调和异步逻辑是否正常
自定义插件 插件注册、配置读取和渲染生命周期是否兼容

内置图表插件重构带来的影响

内置图表插件与看板 API 同时重构,说明升级检查不能局限于页面代码。依赖内置插件行为的自定义样式、配置覆盖和二次封装,也可能需要调整。

建议把插件使用方式分成三类处理:

  1. 仅通过设计器配置的标准图表,可以优先进行视觉回归,检查标题、图例、坐标轴、颜色和提示框。
  2. 使用源码修改图表元素属性的页面,需要核对属性名称、生成结果以及运行时读取方式。
  3. 自定义图表插件应单独建立测试看板,覆盖初始化、更新、销毁和窗口尺寸变化等场景。

如果生产环境包含大量看板,可以先选取柱状图、折线图、饼图、表格以及一个自定义插件作为代表样本。样本通过后再扩大迁移范围,能更早暴露公共兼容问题。

源码编辑器开始适合批量维护

6.0.0 为看板设计页面的源码编辑模式增加了“替换”功能。这个看似基础的能力,在迁移 API、统一属性名或清理重复脚本时非常实用。

替换操作也有明显风险。相同字符串可能同时出现在 JavaScript、HTML 属性、CSS 选择器和普通文本中。执行批量替换前,应先导出或复制看板源码,并使用足够具体的匹配内容。例如,替换完整方法调用通常比替换一个通用变量名更可控。

新增的“自定义插入图表元素属性”功能,则可以减少反复手写属性的成本。团队可以把常用属性沉淀成统一片段,用于图表标识、业务域、刷新策略或测试标记。具体可用属性及其格式,应以 6.0.0 实际设计器和 API 2.0 文档为准。

可以这样实践:为看板元素建立可检查的属性约定

下面是一个可直接打开运行的独立 HTML 示例,用来演示如何为图表容器定义自定义属性,并通过 JavaScript 读取它们。它不是 DataGear 6.0.0 官方 API 示例;接入真实看板时,需要把属性名称和 API 调用替换为平台实际支持的形式。

将内容保存为 dashboard-attribute-demo.html,然后用浏览器打开:

<!doctype html>
<html lang="zh-CN">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>看板元素属性示例</title>
  <style>
    body { font: 16px/1.5 sans-serif; margin: 24px; }
    .chart { border: 1px solid #bbb; padding: 20px; }
  </style>
</head>
<body>
  <section
    id="sales-chart"
    class="chart"
    data-chart-key="monthly-sales"
    data-business-domain="sales"
    data-refresh-seconds="60"
  >
    月度销售图表容器
  </section>

  <script>
    const element = document.querySelector('#sales-chart');
    const config = {
      chartKey: element.dataset.chartKey,
      businessDomain: element.dataset.businessDomain,
      refreshSeconds: Number(element.dataset.refreshSeconds)
    };

    if (!Number.isFinite(config.refreshSeconds)) {
      throw new Error('data-refresh-seconds 必须是数字');
    }

    console.log('图表元素配置:', config);
    element.insertAdjacentHTML(
      'beforeend',
      `<pre>${JSON.stringify(config, null, 2)}</pre>`
    );
  </script>
</body>
</html>

也可以用下面的命令启动一个本地静态服务器:

python3 -m http.server 8080

随后访问 http://localhost:8080/dashboard-attribute-demo.html。在真实项目中,可以将同类属性通过源码编辑器的新插入能力加入图表元素,再由统一脚本读取。属性命名建议采用 data- 前缀,避免与标准 HTML 属性冲突;但 DataGear 是否对属性名称有额外约束,需要在迁移前验证。

升级时把回滚能力留在手里

DataGear 6.0.0 涉及 API 和图表插件重构,适合采用分批迁移,而不是直接覆盖生产环境。升级前至少应完成以下检查:

  • 备份应用配置、数据库以及关键看板源码;
  • 统计旧版 API 和自定义插件的使用范围;
  • 在独立环境验证 API 2.0,不直接修改唯一的生产副本;
  • 对核心看板执行数据、交互和视觉回归;
  • 使用源码替换功能时保留替换前版本;
  • 验证数据集参数相关配置,尤其是带默认值和动态传参的场景;
  • 准备明确的回滚步骤,并记录迁移期间修改过的看板。

这次版本的价值不只在于增加编辑器功能,更在于为看板 API 和插件体系建立新的演进基础。对新项目,可以直接围绕 API 2.0 建立开发规范;对已有项目,则应把它视为一次需要盘点依赖、测试行为并控制发布范围的兼容性升级。


相关推荐