文档中心>腾讯云微搭低代码>实践教程>表单容器更新场景修改字段默认值

表单容器更新场景修改字段默认值

最近更新时间:2024-08-09 17:38:51

我的收藏

需求背景

表单容器组件在更新场景下,表单组件默认值会优先自动抓取绑定数据模型字段对应值,设置其它自定义默认值无效,在特定的业务场景中,需要自定义设置更新字段值,而不是使用默认的字段值。

实现思路

1. 编辑器中使用数据列表组件。



2. 配置好数据列表组件对应的数据模型。



3. 在列表导航图标上配置点击事件,跳转到提前创建好的表单更新页面,其中 URL 参数为所在行数据标识_id。



4. 表单更新页面配置展示,其中表单场景选择“更新”,数据标识绑定上一个页面传递过来的 URL 参数,可以看到表单容器自动填充该数据标识对应的数据。



5. 自定义更新字段值,以“活动标题”为例,默认值为右侧配置区域绑定字段标识“hdbt”,由于存在绑定字段关系,此时“活动标题”无法自定义默认值。



5.1 解除“活动标题”字段强绑定关系,并输入默认值。



5.2 刷新页面,可以看到“活动标题”输入框默认值已经生效。



6. 改造表单容器提交事件中数据源方法入参结构,将“活动标题(hdbt)”参数拼接到表单提交参数结构中。



7. 由于“活动标题”输入框解除了字段绑定,可以看到表单容器提交参数结构解析中,是不含参数活动标题“hdbt”。



8. “活动标题(hdbt)”参数拼接到数据源方法 $w.form1.submitParams



Object.assign(
{
data: { ...$w.form1.submitParams.data, hdbt: $w.input14.value }
},
{
filter: {
where: {
$and: [
{
_id: {
$eq: $w.page.dataset.params.id
}
}
]
}
}
}
)
说明:
参数结构中的 hdbt: $w.input14.value 为需要拼接的字段,其中 $w.input14.value 表示对应 ID 标识为 input14 的单行输入框输入值。



9. 拼接参数解析,可以看到“活动标题”对应的自定义输入值已经在数据源入参结构中成功解析。