后端 JSF 函数开发说明
JSF 函数采用 JavaScript 作为脚本语言,支持 ES 2017 语法。脚本中可以使用 JavaScript 基本能力、Backend SDK 以及 qiqi 内置模块。
JSF按使用场景,有不同的上下文变量和返回值, 目前backend仅支持流程调用这一种后端场景函数, 实际在编写JSF函数时,只需要提供函数体即可。
文档导航
| 内容 | 文档 |
|---|---|
| 数据查询、增删改、GraphQL、内部 API、邮件和批处理 | Backend SDK |
| 调用外部 HTTP/HTTPS 接口(目前仅本地化部署支持) | qiqi.http |
| 对象、集合和数值工具函数 | qiqi.util |
| 日期处理和精确计算 | qiqi.dayjs 与 qiqi.math |
内置模块使用方式
内置模块支持两种使用方式:
- 直接通过全局对象调用:
qiqi.util、qiqi.dayjs、qiqi.math、qiqi.http。 - 当脚本以
import开头时,通过@qiqi/util、@qiqi/dayjs、@qiqi/math、@qiqi/http导入。util、dayjs、http支持默认导入和具名导入,math使用默认导入。
qiqi.http目前仅本地化部署环境支持,其他部署形态暂不可用。
import util, { isEmpty } from '@qiqi/util';
import math from '@qiqi/math';
if (isEmpty(variables)) {
return math.add(0.1, 0.2).value;
}
return util.keys(variables);
流程场景函数
流程场景函数,是在一个单据执行的工作流程过程中,可以调用的函数,比如单据生效后调用,单据弃审后调用等。
场景函数的模板:
function ${funcName}(userContext, objectType, objectId, variables) {
${jsfContent}
}