1.antd pro组件formItemProps和fieldProps属性
antdPro的table和form组件封装了许多方法,可以进一步减少代码量,要积极使用。antdPro的一些属性名字起得比较接近,非常容易混淆。例如:formItemProps和fieldProps的区别
formItemProps和fieldProps都是Ant Design中表单组件的属性配置对象,但是它们的作用范围有所不同。
formItemProps是用于配置表单项的容器组件FormItem的属性。FormItem是一个高阶组件,用于包裹表单项的标签和输入控件,负责处理表单项的布局、校验等逻辑。因此,formItemProps中的属性大多数都是用于控制表单项的布局和样式,例如label、wrapperCol、required等。这些属性可以用于控制表单项的外观和行为,但不直接影响表单项的输入值。
以下是一些常见的formItemProps属性配置示例:
label:表单项的标签文本。name:表单项的名称,用于在提交表单时标识该项。required:指定该表单项是否为必填项。disabled:指定该表单项是否禁用,禁用状态下用户无法进行编辑。helpText:表单项的辅助文本,用于提供额外的说明或提示信息。rules:表单项的校验规则,用于验证用户输入的合法性。wrapperCol:指定表单项的布局样式,用于控制标签和输入框的排列方式。
fieldProps是用于配置表单项的输入控件的属性。在Ant Design中,每个表单项都有一个对应的输入控件组件,例如Input、Select、DatePicker等。这些组件通常会被包裹在FormItem中,用于接收用户的输入。fieldProps中的属性大多数都是用于控制输入控件的各种行为和事件,例如onChange、onBlur、value、defaultValue等。这些属性直接关联到表单项的输入值,并且会在用户输入时自动更新。
以下是一些常见的fieldProps属性配置示例:
value:指定输入控件的当前值。可以通过设置value来控制输入控件的初始值或者根据其他逻辑动态更新值。onChange:指定输入控件值改变时的回调函数。可以在onChange中处理输入值的变化,并进行相应的逻辑操作。placeholder:指定输入控件的占位文本。可以在输入控件中显示一个提示性的文本,告诉用户该输入什么内容。disabled:指定输入控件是否禁用。设置为true时,输入控件变为不可编辑状态。allowClear:指定输入控件是否允许清除。设置为true时,在输入控件右侧会显示一个清除按钮,点击按钮可以清除输入内容。onBlur:指定输入控件失去焦点时的回调函数。可以在onBlur中处理输入控件失去焦点后的逻辑操作。
因此,可以将formItemProps和fieldProps看作是表单项的两个方面:前者控制表单项的外观和行为,后者控制表单项的输入值和事件。在实际应用中,需要根据具体情况合理配置这两个属性对象,以达到所需的表单效果。
<ProFormDigit
name="stationCount"
placeholder="接入"
formItemProps={{
style: {
marginRight: "20px",
marginBottom: 0,
width: "200px",
height: "30px",
};,
}}
rules={[{ required: true, message: "请输入" }]}
fieldProps={{ addonAfter: "座" }}
/>
二者关系如下图所示