历史版本2 :JS API兼容说明 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

本文将介绍 Finereport 10.0 升级至 11.0 时官方 javaScript 接口的变化,用户模板中如果使用了 javaScript 代码,版本升级时,需要仔细阅读本篇文档。

11.0 所有官方支持对外的接口见:API接口汇总 ,其中的接口将跟随 11.0 版本持续迭代更新。

注:11.0 所有新增接口 10.0 下不支持,详情可查看 API接口汇总 中接口支持的范围。

2. 说明编辑

2.1 11.0 和 10.0 接口使用说明

API接口汇总 中列出来的接口即为 11.0 所有官方支持的接口,10.0 模板不一定能使用,建议 10.0 用户直接直接查看 10.0 相关文档,谨慎使用 11.0 的接口。

  • 10.0 中有但 11.0 API 中未列出的接口,建议用户谨慎使用,可能会存在兼容性问题。

  • 有部分接口,虽然在10.0 和 11.0 下名称一致,但可能调用方法、继承来源的对象不一样,建议参考 11.0 的接口介绍文档,不要盲目使用。

2.2 contentPane 对象废弃

11.0 废弃了 contentPane 对象,contentPane 对象上的大部分方法转移到 _g() 获取的报表对象上。废弃的 contentPane 对象及其上的方法在 11.0 中可以使用,但后续不会随版本迭代更新,即在 11.0 上使用会存在兼容风险,建议用户谨慎使用。

  • contentPane 对象上废弃的接口在 11.0 API 中几乎都有替代接口,少量无替代的持续更新中,用户参考 11.0 API 使用即可。

  • 用户升级后,若模板中使用了 contentPane 对象此类旧接口,需要特别注意,建议参考 11.0 API 修改为新接口。

2.3 非官方接口代码方案

通过 jQuery、CSS 获取 HTML DOM 元素修改前端样式的代码方案,和报表前端架构息息相关,版本升级时,兼容性非常不好,建议用户谨慎使用。

  • 10.0 升级后若此类方案不生效,根据当前前端重新修改代码即可。

  • 11.0 开发模板时,建议用户使用官方接口,避免使用此类方式实现功能,若用户使用此类方式,官方不协助排查问题。

2.4 新旧决策报表下的使用问题

用户从 10.0 升级到 11.0 时,决策报表默认为旧版决策报表,旧版决策报表不能使用 11.0 新增的接口,可以切换至新版决策报表下使用 11.0 新增的接口。

  • 如果用户要使用 11.0 的接口,要切换成新版决策报表。

  • 旧版本对应的是 10.0 决策报表前端,10.0 接口的模板可以在旧决策报表下使用,但为了避免后续可能会发生的兼容风险,建议用户转换成新版本,使用 11.0 的接口。

2.5 新计算引擎下的使用问题

11.0 将新计算引擎内置,用户升级后,如果 10.0 模板中使用了 JS 代码,且模板开启了新计算引擎,会存在兼容风险,建议用户直接将代码修改为 11.0 API 中支持的接口。

3. 注意事项编辑

问题描述

在模板中加入 javaScript 后,预览模板时,报错 CustomJSError : _XXXXXXXX.submit is not a function

原因分析

代码中写的接口或者方法不存在。

解决方法

检查代码中使用的接口有没有写错;检查代码中使用的接口在当前环境下是否支持,如:

  • 没有此接口,或者将接口名称拼写错误

  • 10.0 的模板用了只11.0 支持的接口

  • 旧版决策报表用了只 11.0 支持的接口

检查后对应修改正确即可。