表单方法(form)

FormRender v1.x 使用了状态内置的模型,所以外部对表单的所有操作都依赖于 form 实例提供的方法。 本篇会 cover 以下这些常用 api:

form.submit
form.setValues
form.setValueByPath
form.setSchemaByPath

以及以下的生命周期

beforeFinish
onFinish

我们写一个最常用的场景:加载一个已经填写完成的表单,从服务端异步获取数据(这里使用 mock);修改表单并提交新数据给服务端

例 1: 表单与服务端的基本交互

异步加载表单 Schema, 服务端数据填充表单初始值, 提交校验通过后提交数据给服务端

例 2:服务端校验

服务端校验,通过 beforeFinish 从外部回填 error 信息到表单,注意 beforeFinish 需返回要回填的 error

例 3:bind

接口数据与展示经常会不符,例如 form 的交互是日期范围组件,服务端传的值是 startDate,endDate 两个字段。此时使用 bind 字段

例 4:服务端加载选择框的选项

服务端获取数据后展示下拉选项的选项值,我们提供了 form.setSchemaByPath 方法

上次更新: