跳到主要内容

环境变量占位符

系统内置了部分特殊功能的默认值,会在执行时动态解析为相应的值。环境变量占位符可以在表单字段默认值、搜索条件、页面跳转参数等场景中使用。

概述​

环境变量占位符使用 {类型.键名} 的格式,在运行时自动解析为对应的值。如果对数据来源没有明确限定,则直接使用 Env 模式即可,系统会从所有可能来源尝试替换。

占位符类型​

URL 参数占位符​

占位符说明作用范围
{Url.xxkey}自动从 URL 的参数中提取值并填充新增、编辑表单字段,搜索表单

示例:

URL 为 https://example.com/form?type=order&status=pending

占位符解析结果
{Url.type}order
{Url.status}pending

当前数据占位符​

占位符说明作用范围
{Model.xxkey}从当前操作的数据行中获取字段值(Value 属性)列表行编辑表单字段
{Model.xxkey.Text}从当前操作的数据行中获取字段显示值(Text 属性)列表行编辑表单字段

示例:

当前数据行的字段:

  • customerId = "12345"(Value)
  • customerName = "张三"(Text)
占位符解析结果
{Model.customerId}12345
{Model.customerName.Text}张三

父级数据占位符​

占位符说明作用范围
{Parent.xxkey}从当前页面的来源数据中获取字段值(Value 属性)新增、编辑表单字段,搜索表单
{Parent.xxkey.Text}从当前页面的来源数据中获取字段显示值(Text 属性)新增、编辑表单字段,搜索表单

来源数据说明:

  • 如推屏查看详情,则来源字段为点击推屏时的父级页面的列表行数据
  • 跳转新页面不支持该定义

示例:

在列表页点击某行打开推屏详情,列表行数据:

  • orderId = "ORD001"
  • orderAmount = "1000"
占位符解析结果
{Parent.orderId}ORD001
{Parent.orderAmount}1000

通用环境占位符​

占位符说明作用范围
{Env.xxkey}从上述所有来源中依次尝试获取(应用首个匹配项)新增、编辑表单字段,搜索表单
注意

如果要明确从某个来源获取,请使用具体的占位符类型(如 {Url.xxkey}、{Model.xxkey}),不要使用 {Env.xxkey} 这种粗粒度方式。

系统内置占位符​

数据相关​

占位符说明作用范围
{Env.dataId}当前操作数据行的数据 ID 或 URL 上的 id 参数详情页面
{Env.workflowDataId}当前操作数据行的审批数据 ID详情页面

用户相关​

占位符说明作用范围
{Env.LoginUserId}当前登录用户 ID全部

时间相关​

占位符说明作用范围
{Env.CurrentDateTime}当前时间(格式:yyyyMMddHHmmss)全部

系统相关​

占位符说明作用范围
{Env.BaseHost}当前网站的域名地址全部

使用场景​

表单字段默认值​

在表单字段配置中,可以为字段设置动态默认值:

场景占位符配置
新建时自动填充当前用户{Env.LoginUserId}
新建时自动填充当前时间{Env.CurrentDateTime}
从 URL 参数获取默认值{Url.categoryId}
从父级页面获取关联值{Parent.projectId}

搜索条件默认值​

在视图列表的搜索条件中设置默认值:

场景占位符配置
默认搜索当前用户的数据{Env.LoginUserId}
从 URL 获取筛选条件{Url.status}

页面跳转参数​

在页面跳转配置中传递参数:

场景参数配置
跳转到详情页并传递 IDid={Env.dataId}
跳转到编辑页并传递数据dataId={Model._id}

数据源筛选条件​

在数据源组件的筛选条件中使用:

场景筛选条件
只显示当前用户的数据createdBy = {Env.LoginUserId}
只显示当前组织的数据organization = {Env.LoginUserOrganization}

解析优先级​

当使用 {Env.xxkey} 时,系统按以下顺序依次尝试解析:

  1. 系统内置变量:如 LoginUserId、CurrentDateTime 等
  2. 当前数据:{Model.xxkey}
  3. 父级数据:{Parent.xxkey}
  4. URL 参数:{Url.xxkey}

系统会应用首个匹配项,如果所有来源都没有匹配到,则保留原始占位符文本。

最佳实践​

明确数据来源​

推荐使用具体的占位符类型,避免使用 {Env.xxkey}:

// 推荐:明确从 URL 获取
{Url.categoryId}

// 推荐:明确从当前数据获取
{Model.orderId}

// 不推荐:来源不明确
{Env.categoryId}

合理使用 Text 属性​

根据业务需求选择 Value 或 Text:

场景推荐使用
需要存储或传递 ID 值{Model.fieldId}
需要展示给用户看{Model.fieldName.Text}

注意作用范围​

不同占位符有不同的作用范围,使用时需注意:

  • {Model.xxkey} 仅在列表行编辑时可用
  • {Parent.xxkey} 仅在推屏场景可用,跳转新页面不可用
  • {Env.dataId} 仅在详情页面可用

下一步​