antd是咱们罕用的一款react框架(等于没说,哈哈)
什么是ProComponents?
对于一个应用这个组件开发了半年之久的菜鸟来说,什么是ProComponents,
就是antd的增强集成版本,集成度很高,用起来很不便(对于我这个菜鸟来说 容易踩坑),无论是elementUi vant antd…,组件应用状况大抵相似,抽个工夫记录一下,也增深一下印象,当前再遇到新的组件也好得心应手不是。
ProFormDigit
这段代码,为什么要在ProFormDigit套上form.item呢?
那是因为ProFormDigit有一个bug,
因为如果我间接点提交,就会跳过ProFormDigit对于输出的内容的限度,包含(数字,位数,最大值,最小值)都会没来得及校验,提交下来~~
<Form.Item
style={{width:'300px'}}
name="percent"
rules={[
{
required: true,
message: '请输出调整比例',
},
{
pattern:/^([1-9][0-9]{0,1}|100)$/,
message:'请输出1到100之间的整数',
},
]}
>
<ProFormDigit
fieldProps={{ precision: 0 }}
label=""
width={150}
placeholder="请输出调整比例"
min={0}
max={100}
/>
</Form.Item>
这个组件是酱紫的~
工夫组件ProFormDateRangePicker
个别应用
import {
ProFormDateRangePicker,
} from '@ant-design/pro-form'
<ProFormDateRangePicker width="md" name={['contract', 'createTime']} label="合同失效工夫" />
在useColumns中应用
const columns = defineProTableColumn<MaintenanceListVo>([
{
title: '投诉工夫',
dataIndex: 'createTime',
key: 'createTime',
hideInSearch: true,
},
{
title:'',
dataIndex: 'createTime',
key: 'createTime',
valueType: 'dateRange',
hideInTable: true,
fieldProps: {
placeholder: ['投诉工夫','投诉工夫'],
},
search: {
transform: (value) => {
return {
startTime: value[0],
endTime: value[1],
};
},
},
},
]);
/** 解决表格列 */
export function useColumns() {
return { columns };
}
ProFormSelect 抉择框
<ProFormSelect
width={364}
rules={[
{
required: true,
message: '请抉择要转让的员工',
},
]}
placeholder="请抉择人员"
fieldProps={{
onChange: (e) => {
setData(staffList.find((item) => item.employeeId == e));
},
}}
help={currentStore?.storeType === 'community' && '转让后你就不是该小区的负责人,请慎用!'}
name="employeeId"
options={staffList.map((item) => ({
label: item.employeeName,
value: item.employeeId,
}))}
label="转让到"
/>
发表回复