# 自定义表达式脚本函数

系统支持通过自定义脚本扩展表达式函数,支持前端和后端调用。

脚本自定义表达式函数通常用于定义一些非常个性化的表达式函数,只用于当前页面或当前应用,不具备通用性(具备通用性的,可以考虑开发为表达式函数扩展),脚本表达式函数分为项目级别、应用级别和页面级别,具体脚本文件组织见脚本文件组织

在脚本hooks.action.tscustom.ts中定义expfunc_开头的函数就会自动作为自定义脚本表达式函数,脚本表达式函数可以直接在表达式中使用,通过函数名(去掉expfunc_前缀)可以直接引用,函数的参数会自动脚本中的注释提取出来。

  1. 脚本hooks.action中定义的是用于后端表达式函数的,custom.ts用于前端,前端函数需要export出来,如果希望一个函数在前后端都使用,那么需要在两个脚本文件中都定义,函数名称一样。
  2. 函数的第一个参数是系统的表达式计算上下文对象,其他参数是用户在表达式函数中传入的值,个数随意,由用户自己决定。
  3. 表达式编译时,系统不会对参数合法性做严格检查。
  4. 函数中抛出异常,会导致页面计算失败,系统会直接将异常抛出给终端用户。
  5. 前端函数可以返回异步值,如Promise<string>,系统会阻塞计算过程,等待值的返回后继续计算。
是否有帮助?
0条评论
评论