FormBuilder增加INTEGER类型支持
parent
752a0004f0
commit
8dba2ca34a
|
|
@ -166,6 +166,18 @@ const FormItemsRenderer = ({
|
|||
},
|
||||
});
|
||||
break;
|
||||
|
||||
case FORM_ITEM_RENDER_ENUM.INTEGER:
|
||||
option.useConstraints !== false && rules.push({ pattern: /^(\d+)$/, message: "请输入正确的整数" });
|
||||
option.useConstraints !== false && rules.push({
|
||||
validator: (_, value) => {
|
||||
if (value && Math.abs(Number.parseFloat(value)) > 999999999) {
|
||||
return Promise.reject("输入数值超出安全范围");
|
||||
}
|
||||
return Promise.resolve();
|
||||
},
|
||||
});
|
||||
break;
|
||||
}
|
||||
|
||||
if (!useAutoGenerateRequired)
|
||||
|
|
@ -177,6 +189,7 @@ const FormItemsRenderer = ({
|
|||
FORM_ITEM_RENDER_ENUM.TEXTAREA,
|
||||
FORM_ITEM_RENDER_ENUM.INPUT_NUMBER,
|
||||
FORM_ITEM_RENDER_ENUM.NUMBER,
|
||||
FORM_ITEM_RENDER_ENUM.INTEGER,
|
||||
].includes(option.render);
|
||||
|
||||
rules.push({ required: true, message: `${isBlurTrigger ? "请输入" : "请选择"}${option.label}` });
|
||||
|
|
@ -245,7 +258,7 @@ const FormItemsRenderer = ({
|
|||
const itemsFieldKey = getItemsFieldKey(option);
|
||||
/** @type {string | Function} */
|
||||
const render = option.render || FORM_ITEM_RENDER_ENUM.INPUT;
|
||||
const placeholder = option.placeholder || `请${[FORM_ITEM_RENDER_ENUM.INPUT, FORM_ITEM_RENDER_ENUM.TEXTAREA, FORM_ITEM_RENDER_ENUM.INPUT_NUMBER, FORM_ITEM_RENDER_ENUM.NUMBER].includes(render) ? "输入" : "选择"}${option.label}`;
|
||||
const placeholder = option.placeholder || `请${[FORM_ITEM_RENDER_ENUM.INPUT, FORM_ITEM_RENDER_ENUM.TEXTAREA, FORM_ITEM_RENDER_ENUM.INPUT_NUMBER, FORM_ITEM_RENDER_ENUM.NUMBER, FORM_ITEM_RENDER_ENUM.INTEGER].includes(render) ? "输入" : "选择"}${option.label}`;
|
||||
|
||||
switch (render) {
|
||||
case FORM_ITEM_RENDER_ENUM.INPUT:
|
||||
|
|
@ -256,6 +269,7 @@ const FormItemsRenderer = ({
|
|||
|
||||
case FORM_ITEM_RENDER_ENUM.INPUT_NUMBER:
|
||||
case FORM_ITEM_RENDER_ENUM.NUMBER:
|
||||
case FORM_ITEM_RENDER_ENUM.INTEGER:
|
||||
return <InputNumber placeholder={placeholder} style={{ width: "100%" }} {...componentProps} />;
|
||||
|
||||
case FORM_ITEM_RENDER_ENUM.SELECT:
|
||||
|
|
|
|||
|
|
@ -19,6 +19,8 @@ export declare const FORM_ITEM_RENDER_ENUM: {
|
|||
INPUT_NUMBER: "inputNumber";
|
||||
/** 映射为 antd InputNumber */
|
||||
NUMBER: "number";
|
||||
/** 映射为 antd InputNumber */
|
||||
INTEGER: "number";
|
||||
/** 映射为 antd Select */
|
||||
SELECT: "select";
|
||||
/** 映射为 antd Radio.Group */
|
||||
|
|
|
|||
|
|
@ -10,6 +10,8 @@ export const FORM_ITEM_RENDER_ENUM = {
|
|||
INPUT_NUMBER: "inputNumber",
|
||||
/** 映射为 antd InputNumber */
|
||||
NUMBER: "number",
|
||||
/** 映射为 antd InputNumber */
|
||||
INTEGER: "number",
|
||||
/** 映射为 antd Select */
|
||||
SELECT: "select",
|
||||
/** 映射为 antd Radio.Group */
|
||||
|
|
|
|||
Loading…
Reference in New Issue