Form

表单容器与字段级校验协调器,把服务端 Result 按字段名路由到对应表单项的行内红字。

最后更新

说明

包裹一组标注 Field 的 FormGroup,保存时把服务返回的 Result 交给 Apply:服务端用 Result.Data 带回出错字段名,据此把错误就地标到对应字段下方,比顶部 Toast 更直观;用户在该字段内编辑会自动清掉红字。整体性错误(无字段归属)Apply 返回 false,交由调用方退回 Toast 提示。

常见能力:

  • 按字段名路由错误
  • 编辑即时清除
  • 无归属退回 Toast
  • 重开自动清空
  • 自身不渲染额外 DOM

用法

<Form @ref="form">
    <FormGroup Label="模块名称" Field="Name" Required="true">
        <Input @bind-Value="@name" />
    </FormGroup>
    <Button Text="保存" OnClick="Save" />
</Form>

// Save 内:
if (!form.Apply(await svc.SaveAsync(model)))
    UI.Error(result.Message);

API 参数

参数 类型 默认值 说明
ChildContent RenderFragment null
Visible bool true 取得或设置组件是否可见,默认为false。
VisibleChanged EventCallback<bool> — 事件 取得或设置组件可见性变化时的回调事件。
Class string null 取得或设置组件的CSS类名,用于自定义样式。
Disabled bool false 取得或设置组件是否禁用,默认为false。
Style string null 取得或设置组件的内联样式,用于自定义样式。

所有组件均继承 BaseComponent,除上表参数外还支持 Class、Style、Disabled、Visible。

微信公众号二维码 扫码关注公众号
QQ 交流群二维码 扫码加入 QQ 群